關與JavaString,StringBuilder,StringBuffer的區別
阿新 • • 發佈:2018-11-19
String,StringBuilder,StringBuffer
1.String:字串常量,是不可變物件,每次對String型別進行改變都等同於生成了一個新的String物件,速度慢. 適用於少量字串操作的情況.
2.StringBuffer:字串變數,它的物件是可以擴充和修改的其中很多方法有synchronized關鍵字,是執行緒安全的可變字元序列,速度較快.適用於多執行緒下在字元緩衝區進行大量操作的情況
3.StringBuilder,JDK1.5之後推出的與StringBuffer相容的API,用作StringBuffer的一個簡單替換,單個執行緒使用時,建議優先採用,它比StringBuffer速度要快.適用於多執行緒下載字元緩衝區進行大量操作的情況.
package String;
/**
* 由於String的設計不適合頻繁修改,對此Java提供一個
* 用於編輯字串內容的類:StringBuilder
* StringBulider內部維護了一個可變的字元陣列,不會每次
* 修改都來建立物件,從而降低資源開銷,提高執行效率.
* 其提供了方便編輯字串內容的相關方法,包含
* 曾刪改插等常見操作
* @author Administrator
*/
public class StringBuilderDemo {
public static void main(String[] args) {
String str="好好學習java";
/*
* 常見構造方法:
* StringBuild():無參,預設表示空字串
* StringBulid(String str):表示給定內容
*/
StringBuilder bu=new StringBuilder(str);
/*
* 好好學習
* 好好學習,找工作
* append():向當前字串末尾追加給定內容
*/
bu.append(",找工作");
String s=bu.toString();
System.out.println(s);
}
}