Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Immutabilité des Chaînes en Java | Chaînes de Caractères
Introduction à Java

Immutabilité des Chaînes en Java

Glissez pour afficher le menu

Vous savez déjà que les chaînes de caractères stockent du texte comme les noms de clients, les noms de produits et les messages. Mais ce qui rend les chaînes de caractères particulières en Java, c'est qu'elles sont immuables.

Immuabilité signifie qu'une fois qu'un objet String est créé, son contenu ne peut pas être modifié. Toute opération qui semble modifier une chaîne crée en réalité un nouvel objet String en arrière-plan.

Exemple

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 } }

Même si les deux variables ont été réaffectées, elles se comportent différemment en interne. Avec int, la variable stocke directement la valeur — la réaffectation remplace simplement cette valeur. Mais String est un type référence, ce qui signifie que la variable stocke une adresse pointant vers un objet String en mémoire. Lorsque drink = "Cappuccino" est assigné, Java ne modifie pas "Espresso" — il crée un tout nouvel objet String et fait pointer drink vers celui-ci à la place. L'objet original "Espresso" reste inchangé.

Fonctionnement étape par étape

String drink = "Espresso";

Java crée un objet String "Espresso" et drink pointe vers celui-ci.

drink = "Cappuccino";

Java crée un nouvel objet String "Cappuccino", drink pointe maintenant vers le nouveau. "Espresso" n'est pas modifié.

question mark

Que signifie le fait que les chaînes de caractères sont immuables en Java ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Immutabilité des Chaînes en Java

Vous savez déjà que les chaînes de caractères stockent du texte comme les noms de clients, les noms de produits et les messages. Mais ce qui rend les chaînes de caractères particulières en Java, c'est qu'elles sont immuables.

Immuabilité signifie qu'une fois qu'un objet String est créé, son contenu ne peut pas être modifié. Toute opération qui semble modifier une chaîne crée en réalité un nouvel objet String en arrière-plan.

Exemple

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 } }

Même si les deux variables ont été réaffectées, elles se comportent différemment en interne. Avec int, la variable stocke directement la valeur — la réaffectation remplace simplement cette valeur. Mais String est un type référence, ce qui signifie que la variable stocke une adresse pointant vers un objet String en mémoire. Lorsque drink = "Cappuccino" est assigné, Java ne modifie pas "Espresso" — il crée un tout nouvel objet String et fait pointer drink vers celui-ci à la place. L'objet original "Espresso" reste inchangé.

Fonctionnement étape par étape

String drink = "Espresso";

Java crée un objet String "Espresso" et drink pointe vers celui-ci.

drink = "Cappuccino";

Java crée un nouvel objet String "Cappuccino", drink pointe maintenant vers le nouveau. "Espresso" n'est pas modifié.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1
some-alt