Maison > Java > javaDidacticiel > Initialisation de chaîne en Java

Initialisation de chaîne en Java

WBOY
Libérer: 2024-08-30 16:07:27
original
1117 Les gens l'ont consulté

L'initialisation des chaînes est l'une des parties de base de la programmation. L'initialisation d'une chaîne signifie attribuer une valeur à la variable avant qu'elle ne soit utilisée dans le programme Java. L'initialisation de la chaîne peut être effectuée de deux manières :

  • Initialisation de l'objet
  • Initialisation directe

La chaîne est un objet en java. La chaîne fait référence à une séquence de caractères.  C’est également connu sous le nom de tableau de caractères. Une chaîne est toujours indiquée entre guillemets ; même les guillemets ne font pas partie de la chaîne. L'initialisation de la chaîne s'effectue également en deux étapes, la première est la déclaration et la seconde est l'initialisation. La déclaration de chaîne fait référence à la déclaration d’une chaîne sans attribuer explicitement de valeur. Dans la plupart des cas d'utilisation, la seule déclaration de String ne nécessite aucune initialisation.

PUBLICITÉ Cours populaire dans cette catégorie MAÎTRISÉE JAVA - Spécialisation | 78 séries de cours | 15 tests simulés

Types d'initialisation de chaîne en Java

En Java, une chaîne est initialisée de plusieurs manières. Soit en utilisant un constructeur, soit en utilisant Literal. Il existe une différence dans l'initialisation de String en utilisant un nouveau mot-clé et en utilisant Literal. L'initialisation de String à l'aide de nouveaux mots-clés crée à chaque fois un nouvel objet Java. Une variable définie mais non initialisée ne peut pas être utilisée dans le programme car elle ne contient aucune valeur.

1. Initialisation d'objet

Initialisation de la chaîne à l'aide du nouveau mot-clé. L'initialisation de String à l'aide d'un nouveau mot-clé crée un nouvel objet dans le tas de mémoire. La chaîne initialisée via un objet est mutable signifie que la valeur de la chaîne peut être réaffectée après l'initialisation.

String strMsg = new String("Be specific towards your goal!");
Copier après la connexion

Lors du lancement d'objets à l'aide du constructeur, les compilateurs Java créent un nouvel objet dans la mémoire tas. La mémoire tas est une mémoire réservée à la JVM.

2. Initialisation directe

Initialisation de chaîne à l'aide de littéraux. L'initialisation de la chaîne à l'aide du littéral crée un objet dans la zone de mémoire regroupée.

String strMsg = "Be specific towards your goal!";
Copier après la connexion

Lors de l'initialisation de String à l'aide d'un littéral et de la valeur qui lui est attribuée déjà initialisée dans une autre String. Dans un tel scénario, la chaîne créée via Literal ne crée pas de nouvel objet. Il vient de transmettre la référence à l'objet créé précédemment.

Exemples d'initialisation de chaîne en Java

Voici les différents exemples d'initialisation de chaîne en Java.

Exemple n°1

Dans la chaîne créée ci-dessous, les deux chaînes sont créées à l'aide du littéral.

Code :

String ObjStringFirst="Welcome";
String ObjStringSecond="Welcome";
Copier après la connexion

Dans la chaîne ci-dessus, nous créons des objets en utilisant String Literal. Dans une telle situation, si l’objet existe déjà avec la même valeur, il renverra le même objet ; sinon, cela créera un nouvel objet.

Exemple n°2

Dans l'exemple ci-dessous, nous pouvons voir comment les chaînes sont initialisées.

Code :

public class StringExample {
public static void main(String[] args)
{
String nameFirst = "Alister";
String nameSecond = "Campbell";
String nameThird = new String("Adam");
String nameFourth = new String("Martin");
//String nameFifth;
String strNullFirst  = null;
String strNullSecond = null;
String strNullThird  = null;
System.out.println("String initialized :");
//printing variable which are initialized
System.out.println("First : " + nameFirst);
System.out.println("Second : " + nameSecond);
System.out.println("Third : " + nameThird);
//printing variable which are declared but not initialized
//System.out.println("String declared but not initialized :");
//System.out.println("Fifth : " + nameFifth);
}
}
Copier après la connexion

Sortie :

Initialisation de chaîne en Java

Exemple #3

Dans cet exemple, une déclaration de la variable String est donnée. Il contient une variable déclarée mais non initialisée lors de la compilation du programme.

Code :

public class StringExample {
public static void main(String[] args)
{
String nameFirst;
//printing variable which are declared but not initialized
System.out.println("String declared but not initialized :");
System.out.println("Fifth : " + nameFirst);
}
}
Copier après la connexion

Sortie :

Le résultat du programme ci-dessus est donné ci-dessous. Le programme ci-dessus générera l’erreur lors de la compilation. La chaîne est déclarée mais pas initialisée.

Initialisation de chaîne en Java

Après la déclaration String, si une valeur est attribuée ultérieurement à la variable String déclarée, alors la compilation ne générera aucune erreur (car l'initialisation de String se déroule en deux parties). Le premier est une déclaration et le second est une affectation.

Exemple n°4

Dans cet exemple, partons de l'initialisation String avec des valeurs vides. Toutes les variables String initiées via des valeurs vides auront des objets différents pour les trois, car String initialisé via Literal créera un objet dans le pool de chaînes tandis que String initialisé via un nouveau mot-clé créera des objets dans la zone de tas de mémoire.

Code :

public class StringExample {
public static void main(String[] args)
{
String strVal1 = "";
String strVal2 = new String();
String strVal3 = new String("");
//printing variable which are initialized with empty values
System.out.println("String Values :");
System.out.println("First : " + strVal1);
System.out.println("Second : " + strVal2);
System.out.println("Third : " + strVal3);
}
}
Copier après la connexion

Sortie :

Dans le programme ci-dessus, même l'objet de Strings est différent, mais la valeur attribuée à String est la même. Le résultat ci-dessous montre comment les valeurs vides sont attribuées à chaque variable de chaîne.

Initialisation de chaîne en Java

Exemple #5

Dans le programme ci-dessous, une comparaison des chaînes initialisées ci-dessus est donnée. Utiliser ici trois façons de comparer la chaîne.

1. == operator: In java == operator compare the references, not the values.
2. equals() method: It compares the variable’s value, not the references; hence, if the value matches both the String variable, it returns true other false.
3. compareTo() method: compareTo() method check the values & if values are identical then it return 0 otherwise it return + & – based on the below given comparison.

  • It returns 0 if str1 == str2
  • It returns positive value if str1 > str2
  • It returns negative value if str1 < str2

Code:

public class StringExample {
public static void main(String[] args)
{
String strVal1 = "";
String strVal2 = new String();
String strVal3 = new String("");
//printing variable which are initialized with empty values
System.out.println("String Values :");
System.out.println("First : " + strVal1);
System.out.println("Second : " + strVal2);
System.out.println("Third : " + strVal3);
System.out.println(" \nComparing strings using == operator :");
System.out.println("Comparing first two strings :");
System.out.println(strVal1 == strVal2);
System.out.println("Comparing last two strings :");
System.out.println(strVal2 == strVal3);
System.out.println("Comparing first & last strings :");
System.out.println(strVal1 == strVal3);
System.out.println(" \nComparing strings using equals method :");
System.out.println("Comparing first two strings :");
System.out.println(strVal1.equals(strVal2));
System.out.println("Comparing last two strings :");
System.out.println(strVal2.equals(strVal3));
System.out.println("Comparing first & last strings :");
System.out.println(strVal1.equals(strVal3));
System.out.println(" \nComparing strings using compareTo method :");
System.out.println("Comparing first two strings :");
System.out.println(strVal1.compareTo(strVal2));
System.out.println("Comparing last two strings :");
System.out.println(strVal2.compareTo(strVal3));
System.out.println("Comparing first & last strings :");
System.out.println(strVal1.compareTo(strVal3));
}
}
Copier après la connexion

Output:

The output of the comparing string program is given below. It contains the output after comparing the Strings in three different ways; thus, outcomes of the comparison are also different according to the method applied.

Initialisation de chaîne en Java

Conclusion

The above-given article explains the initialization of String & different types of ways to initialize the String in java. Also given examples in the article describe the internal creation of objects when initiating String using Literal. It also describes the difference between declaration & initialization.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal