Il differenza principale tra null e empty è che il null è usato per riferirsi a nulla mentre vuoto è usato per riferirsi a una stringa unica con lunghezza zero.
Una stringa si riferisce a una sequenza di caratteri. Ad esempio, "programmazione" è una stringa. Il linguaggio di programmazione Java supporta le stringhe e vengono trattati come oggetti. La classe delle stringhe è immutabile. Pertanto, dopo aver creato un oggetto, non può essere modificato. A volte, le stringhe possono essere nulle o vuote. Quando la variabile String viene assegnata con null, indica che la variabile non si riferisce effettivamente a nessuna posizione di memoria nell'heap. Tuttavia, quando una variabile String viene assegnata con una stringa vuota, indica che la variabile di riferimento si riferisce a una posizione di memoria di una stringa con lunghezza zero.
1. Cosa è null
- Funzionalità ed esempi
2. Cosa è vuoto
- Funzionalità ed esempi
3. Differenza tra null e vuoto
- Confronto tra le principali differenze
Vuoto, Null, Archi
Null si riferisce a nulla. Osservare le seguenti due dichiarazioni.
Figura 1: il programma eseguirà una stringa nulla
s1 è una variabile String. È assegnato con null. Pertanto, la JVM non assegnerà alcuna memoria, quindi la variabile s1 non punterà a nulla L'istruzione String s1 = null; è anche equivalente a String s1; Quando si stampa la lunghezza della stringa s1, verrà restituita un'eccezione di puntatore nullo. Questo perché s1 non si riferisce a una stringa effettiva per contare la lunghezza.
Vuoto si riferisce a una stringa senza lunghezza. Fare riferimento al codice seguente.
Figura 2: programma con stringa vuota
s2 è una variabile String. È assegnato con una stringa vuota che è "". Pertanto, la JVM allocherà spazio di memoria per una stringa vuota. s2 farà riferimento a quella stringa vuota. Quando si stampa la lunghezza della stringa s2, verrà stampato 0. Questo perché s1 sta puntando a una stringa, ma non ha caratteri per contare la lunghezza.
Il null è un termine che indica che un oggetto non fa riferimento a nulla nell'heap mentre vuoto è un termine che indica che un oggetto fa riferimento a una stringa univoca di lunghezza zero nell'heap.
String s1 = null; o stringa s1; esprime che s1 si riferisce a nulla o null. String s2 = ""; esprime che s2 si riferisce a una stringa vuota.
La stampa della lunghezza della stringa nulla darà un'eccezione di puntatore nullo. La stampa della lunghezza della stringa vuota darà zero.
Una stringa si riferisce a una sequenza di caratteri. Le stringhe possono a volte essere nulle o vuote. La differenza tra null e empty è che il null è usato per riferirsi a nulla mentre vuoto è usato per riferirsi a una stringa univoca con lunghezza zero.
Punto tutorial. "Stringhe Java". Www.tutorialspoint.com, Tutorials Point, 12 agosto 2018, disponibile qui.