字符串特點:字符串是常量;它們的值在創建之後不能更改
字符串的內容一旦發生了變化,那麼馬上會創建一個新的對象。
注意:字符串的內容不適宜頻繁修改,因爲一旦修改馬上就會創建一個新的對象。
public class Demo1 {
public static void main(String[] args){
String str1 = "hello";
String str2 = str1 + "world" ;
System.out.println("str1與str2是同一個對象嗎?"+(str1==str2));
}
}
運行結果:
str1與str2是同一個對象嗎?false
如果需要頻繁修改字符串的內容,建議使用字符串緩衝類(StringBuffer)。
StringBuffer 其實就是一個存儲的容器
容器最基本的作用是
增加 刪除 查找 修改
筆試題目:使用StringBuffer無參的構造函數創建一個對象時,默認的初始容量是多少?如果長度不夠使用了,自動增長多少倍?
StringBuffer 底層是依賴了一個字符數組才能存儲字符數據的,該字符串數組默認的初始容量是16,如果字符數組的長度不夠使用,自動增長1倍。
添加數據
append();
所以下面的代碼能輸出超過16個字符的數據
public static void main(String[] args) {
// 先使用StringBuffer無參的構造函數創建一個字符串緩衝類。
StringBuffer sb = new StringBuffer();
sb.append("java");
sb.append("java");
sb.append("java");
sb.append("java");
sb.append("java");
System.out.println(sb);
}
運行結果:
javajavajavajavajava