Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Immutabilità delle Stringhe in Java | Stringhe
Introduzione a Java

Immutabilità delle Stringhe in Java

Scorri per mostrare il menu

Sai già che le stringhe memorizzano testo come nomi di clienti, nomi di prodotti e messaggi. Ma una caratteristica che rende le stringhe speciali in Java è che sono immutabili.

L'immutabilità significa che, una volta creato un oggetto String, il suo contenuto non può essere modificato. Qualsiasi operazione che sembra modificare una stringa in realtà crea un nuovo oggetto String dietro le quinte.

Esempio

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { int stock = 20; String drink = "Espresso"; stock = 15; drink = "Cappuccino"; System.out.println(stock); // 15 System.out.println(drink); // Cappuccino } }

Anche se entrambe le variabili sono state riassegnate, si comportano in modo diverso internamente. Con int, la variabile memorizza direttamente il valore — la riassegnazione semplicemente lo sostituisce. Ma String è un tipo riferimento, il che significa che la variabile memorizza un indirizzo che punta a un oggetto String in memoria. Quando viene assegnato drink = "Cappuccino", Java non modifica "Espresso" — crea un nuovo oggetto String e fa sì che drink punti a quest'ultimo. L'oggetto originale "Espresso" rimane invariato.

Come funziona passo dopo passo

String drink = "Espresso";

Java crea un oggetto String "Espresso" e drink punta a esso.

drink = "Cappuccino";

Java crea un nuovo oggetto String "Cappuccino", ora drink punta a quello nuovo. "Espresso" non viene toccato.

question mark

Cosa significa che le String sono immutabili in Java?

Seleziona la risposta corretta

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 1

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Immutabilità delle Stringhe in Java

Sai già che le stringhe memorizzano testo come nomi di clienti, nomi di prodotti e messaggi. Ma una caratteristica che rende le stringhe speciali in Java è che sono immutabili.

L'immutabilità significa che, una volta creato un oggetto String, il suo contenuto non può essere modificato. Qualsiasi operazione che sembra modificare una stringa in realtà crea un nuovo oggetto String dietro le quinte.

Esempio

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { int stock = 20; String drink = "Espresso"; stock = 15; drink = "Cappuccino"; System.out.println(stock); // 15 System.out.println(drink); // Cappuccino } }

Anche se entrambe le variabili sono state riassegnate, si comportano in modo diverso internamente. Con int, la variabile memorizza direttamente il valore — la riassegnazione semplicemente lo sostituisce. Ma String è un tipo riferimento, il che significa che la variabile memorizza un indirizzo che punta a un oggetto String in memoria. Quando viene assegnato drink = "Cappuccino", Java non modifica "Espresso" — crea un nuovo oggetto String e fa sì che drink punti a quest'ultimo. L'oggetto originale "Espresso" rimane invariato.

Come funziona passo dopo passo

String drink = "Espresso";

Java crea un oggetto String "Espresso" e drink punta a esso.

drink = "Cappuccino";

Java crea un nuovo oggetto String "Cappuccino", ora drink punta a quello nuovo. "Espresso" non viene toccato.

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 1
some-alt