Maison >Java >javaDidacticiel >Chaîne_chaîne
Chaîne immuable
Les objets chaîne sont immuables. La JVM l'a optimisé et a ouvert une zone dans la mémoire en tant que pool de constantes de chaîne. Les objets chaîne créés sous forme « littérale » sont mis en cache et réutilisés.
//"字面量"形式创建的字符串 String str = "abc";
Opérateur de chaîne : "+" et StringBuilder
opérateur "+" peuvent connecter des chaînes de chaîne. Le compilateur dispose d'une mesure d'optimisation lors de la compilation du code source et de la constatation que tous les paramètres d'une expression de calcul sont des littéraux, il effectuera directement le calcul et compilera le résultat dans un fichier de classe.
String str = "abcd"; String str1 = "ab"+"cd";//输出abcd 对象不变 System.out.println(str==str1);//true
Si un côté de l'expression de calcul est une variable, le compilateur l'assemblera pendant l'exécution et générera finalement un nouvel objet, consommant des performances.
String str = "abcd"; String str1 = "ab"; String str2 = str1+"cd";//输出abcd 对象改变 System.out.println(str==str2);//false
StringBuilder
Le compilateur référencera également automatiquement la méthode append() de StringBuilder pour l'épissage lors de la compilation, et appellera enfin toString() pour générer le résultat. Cependant, chaque boucle d'épissage dans le bytecode .calss créera un objet StringBuilder. Si l'opération de chaîne est complexe, créez un objet StringBuilder pour l'épissage lors de l'écriture du fichier .java.
Méthodes courantes de String
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!