String和StringBuffer的區別


String而是一個類,它被用來表示字符序列,其字符本身符合Unicode標准,初始化方式有兩種。而
StringBuffer是-個具有對象引用傳遞特點的字符串對象,可以調用其方法動態的進行增加、插入、修改和刪
除操作,不用像數組那樣事先指定大小,從而實現多次插入字符,一次整體取出的效果,因而操作字符串非
常靈活方便。

通過API我們可以看到這兩個東西里面的方法其實是一樣的,那他們有什么區別呢?

StringBuffer是jdk1.0版本加入進去的,是路線安全的,效率低

StringBuffer是jdk1.5版本加入叫你去的,線程不安全,效率高

代碼案例:

public class StringBuffer02 {

public static void main(String[] args) {
String s="紀先森";
System.out.println("沒變值前的String:"+s);
change(s);
System.out.println("改變之后的String:"+s);
StringBuffer sb=new StringBuffer(11);
sb.append("你好,");
System.out.println(sb);
System.out.println("=====");
change01(sb);
System.out.println(sb);
}
public static void change(String s){
s+="java";

}
public static void change01(StringBuffer sb){
sb.append("java");

}
}
輸出結果:
    

沒變值前的String:紀先森
改變之后的String:紀先森
你好,
=====
你好,java


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM