Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Java standard: appunti, Appunti di Programmazione Java

Appunti su Java Standard, presso ELIS

Tipologia: Appunti

2024/2025

In vendita dal 21/01/2025

tito-catalano
tito-catalano 🇮🇹

7 documenti

1 / 4

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
JAVA 11/10/2024
java.time è il pacchetto introdotto in Java 8 per gestire date, orari, durate e fusi orari in modo più
intuitivo e potente rispetto alle vecchie classi java.util.Date e java.util.Calendar.
LocalDate: Rappresenta una data senza orario o fuso orario. È utile per rappresentare date
come compleanni, eventi, ecc.
Esempio:
LocalDate today = LocalDate.now(); // Data corrente
LocalDate specificDate = LocalDate.of(2024, Month.OCTOBER, 11); // Data specifica
LocalTime: Rappresenta un'ora del giorno senza informazioni sulla data o sul fuso orario.
Esempio:
LocalTime currentTime = LocalTime.now(); // Orario corrente
LocalTime specificTime = LocalTime.of(14, 30); // Orario specifico (14:30)
LocalDateTime: Combina LocalDate e LocalTime per rappresentare una data e un orario
senza fuso orario.
ZonedDateTime: È simile a LocalDateTime, ma include anche informazioni sul fuso orario.
Instant: Rappresenta un istante preciso (es. un timestamp) nel tempo, partendo dall'Epoch
(1970-01-01T00:00:00Z).
Period: Rappresenta una quantità di tempo in termini di anni, mesi e giorni.
Duration: Rappresenta una durata in secondi e nanosecondi. È utile per rappresentare
intervalli di tempo più precisi rispetto a Period.
ZoneId e ZoneOffset: ZoneId rappresenta un fuso orario, come "Europe/Rome" o
"America/New_York". ZoneOffset rappresenta la differenza in ore da UTC, come "+02:00".
DateTimeFormatter: Utilizzato per formattare e analizzare oggetti di data e ora in stringhe
leggibili.
Esempio:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
String formattedDate = today.format(formatter); // "11/10/2024"
Definizione e dichiarazione delle ArrayList():
ArrayList è una classe presente nel package java.util di Java che implementa l'interfaccia List. È
una lista dinamica che consente di memorizzare elementi in ordine, mantenendo la loro sequenza
di inserimento, e permette la duplicazione degli elementi. A differenza di un array normale, la
dimensione di un ArrayList può crescere e ridursi dinamicamente durante l'esecuzione del
programma.
pf3
pf4

Anteprima parziale del testo

Scarica Java standard: appunti e più Appunti in PDF di Programmazione Java solo su Docsity!

JAVA 11/10/

java. time è il pacchetto introdotto in Java 8 per gestire date, orari, durate e fusi orari in modo più intuitivo e potente rispetto alle vecchie classi java.util.Date e java.util.Calendar.  LocalDate : Rappresenta una data senza orario o fuso orario. È utile per rappresentare date come compleanni, eventi, ecc. Esempio: LocalDate today = LocalDate.now(); // Data corrente LocalDate specificDate = LocalDate.of(2024, Month.OCTOBER, 11); // Data specifica  LocalTime : Rappresenta un'ora del giorno senza informazioni sulla data o sul fuso orario. Esempio: LocalTime currentTime = LocalTime.now(); // Orario corrente LocalTime specificTime = LocalTime.of(14, 30); // Orario specifico (14:30)  LocalDateTime : Combina LocalDate e LocalTime per rappresentare una data e un orario senza fuso orario.  ZonedDateTime : È simile a LocalDateTime, ma include anche informazioni sul fuso orario.  Instant : Rappresenta un istante preciso (es. un timestamp) nel tempo, partendo dall'Epoch (1970-01-01T00:00:00Z).  Period : Rappresenta una quantità di tempo in termini di anni, mesi e giorni.  Duration : Rappresenta una durata in secondi e nanosecondi. È utile per rappresentare intervalli di tempo più precisi rispetto a Period.  ZoneId e ZoneOffset : ZoneId rappresenta un fuso orario, come "Europe/Rome" o "America/New_York". ZoneOffset rappresenta la differenza in ore da UTC, come "+02:00".  DateTimeFormatter : Utilizzato per formattare e analizzare oggetti di data e ora in stringhe leggibili. Esempio: DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy"); String formattedDate = today.format(formatter); // "11/10/2024" Definizione e dichiarazione delle ArrayList(): ArrayList è una classe presente nel package java.util di Java che implementa l'interfaccia List. È una lista dinamica che consente di memorizzare elementi in ordine, mantenendo la loro sequenza di inserimento, e permette la duplicazione degli elementi. A differenza di un array normale, la dimensione di un ArrayList può crescere e ridursi dinamicamente durante l'esecuzione del programma.

Caratteristiche principali di ArrayList:Dinamico: Può crescere o ridursi automaticamente in base al numero di elementi aggiunti o rimossi.  Basato su array: Internamente, ArrayList utilizza un array per memorizzare gli elementi. Se l'array diventa pieno, viene creato un nuovo array con una capacità maggiore e gli elementi vengono copiati nel nuovo array.  Ordine : Mantiene l'ordine degli elementi secondo il loro inserimento.  Accesso casuale veloce: Grazie al fatto che è basato su array, offre un accesso molto rapido agli elementi tramite l'indice (O(1)).  Rimozione e inserimento lenti: Operazioni come l'inserimento o la rimozione di elementi al centro della lista possono essere lente (O(n)) perché richiedono lo spostamento di tutti gli altri elementi. ArrayList states = new ArrayList(); I blocchi di testo: Sono stati introdotti con Java 13 e resi definitivi con Java 15. In Java 17 sono stati resi stabili. Si tratta di una sintassi alternativa per definire stringhe multilinea in modo più leggibile, evitando l'uso di escape characters come \n per le nuove righe. Utilizzano il delimitatore """ (tre virgolette) e semplificano la gestione del testo complesso, come file JSON, XML, HTML o SQL, all'interno del codice Java. Esempi di utilizzo:Stringa multilinea: con i blocchi di testo, puoi scrivere stringhe multilinea in modo chiaro. Esempio: String json = """ { "nome": "Mario", "cognome": "Rossi", "età": 30 } """; System.out.println(json);  SQL Query: i blocchi di testo sono anche utili per query SQL o altri testi che richiedono formattazione precisa: Esempio: String query = """ SELECT * FROM utenti WHERE età > 18 ORDER BY cognome; """;

case 2 -> { System.out.println("Controllo se l'anno è bisestile..."); yield 28; // yield restituisce il valore } default -> throw new IllegalArgumentException("Mese non valido"); }; Un record è una classe speciale che è stata creata per quelle classi che una volta venivano utilizzate per raccogliere dati , ad esempio la raccolta degli utenti. I campi della classe sono automaticamente final e in automatico contiene: i getter, toString(), l’equals(), hashCode() e il costruttore parametrizzato. Esempio: public record Persona (String nome, int eta) {} Il “sealed”. È una nuova funzionalità introdotta in Java 17 e permette di limitare le classi e le interfacce che possono estendere o implementare una classe/interface , avendo una maggiore gerarchia di classi e design del codice. Viene utilizzata per un controllo più rigoroso sull’ereditarietà e una maggiore leggibilità e manutenibilità del codice, riducendo l’abuso di ereditarietà. Esempio: public abstact sealed class Veicolo permits Auto, Moto, Bicicletta {} Esempio2: public class Bicicletta extends Veicolo permit BiciElettrica {}