public class TestStringBuffer{
public static void main(String[] args){
StringBuffer sb = new StringBuffer();
sb.append("abc");
sb.append("123");
System.out.println("sb = " + sb);
sb.insert(3, "--");
System.out.println("sb = " + sb);
sb.delete(2,6);
System.out.println("sb = " + sb);
sb.reverse();
System.out.println("sb = " + sb);
String str = sb.toString(); // 13行
System.out.printf("str = " + str);
}
}
Comment cela peut-il être un type ?
StringBuffer
sera implicite lors de la concaténation de chaînes + ou de la sortie ExécuteztoString()
à convertir enString
StringBuffer
在做字符串连接 + 或者输出的时候会隐式执行
toString()
转化为String
第13行是显示的执行
La ligne 13 est l'exécution affichée desb.toString()
将sb
转换为String
sb.toString()
pour convertirsb
enString
#🎜🎜#StringBuffer : String buffer
String : String
Lorsque modifiez en une chaîne, vous devez utiliser StringBuffer et la classe StringBuilder.
Différents de la classe String, les objets des classes StringBuffer et StringBuilder peuvent être modifiés plusieurs fois sans générer de nouveaux objets inutilisés .
La classe StringBuilder a été proposée dans Java 5. La plus grande différence entre elle et StringBuffer est que les méthodes de StringBuilder ne sont pas thread-safe (ne sont pas accessibles de manière synchrone).
Étant donné que StringBuilder a un avantage en termes de vitesse par rapport à StringBuffer, il est recommandé d'utiliser la classe StringBuilder dans la plupart des cas. Cependant, dans les cas où l'application nécessite une sécurité des threads, la classe StringBuffer doit être utilisée.