Java基礎String、StringBuilder類
1 String類

1.1 String概括
String 類 在 java.lang 包下,所以使用的時候不需要導包
java程序中所有的雙引號字符串,都是String這個類的對象
特點:字符串 不可變 ,它們的值在創建后不可改變
字符串的特點:
1:字符串的內容永不可變。
2:正是因為字符串不可改變,所以字符串是可以共享使用的。
3:字符串效果上相當于是char[]字符數組,但是底層原理是byte[]字節數組。
1.2 String構造方法
推薦使用直接賦值的方式
1.3 String對象的區別
1.通過 new 創建字符串對象,每一次 new 都會申請一個內存空間,雖然內容相同,但是地址值不同
2.以 “ ” 方式給出的字符串,只要字符串的序列相同(順序和大小寫),無論在程序中出現多少次,JVM都只會建立一個String對象,并在字符串池維護
內存
1.4 String字符串比較
使用 雙等號 作比較
基本類型:比較的是 數據值 是否相同
引用類型:比較的是 地址值 是否相同
字符串是對象,它比較 內容 是否相同,是通過一個方法來實現的,這個方法叫做: equals()
范例:
public class Demo{ public static void main(String[] args){ //構造方法的方式得到對象 char[] chs = {'a','b','c'}; String s1 = new String(chs); String s2 = new String(chs); //直接賦值的方法得到對象 String s3 = "abc"; String s4 = "abc"; System.out.println(s1.equals(s2)); //true System.out.println(s1.equals(s3)); //true System.out.println(s3.equals(s4)); //true } }
2 StringBuilder可變字符串類
StringBuilder是一個可變的字符串類,內容可以改變
StringBuilder又稱為可變字符序列,它是一個類似于 String 的字符串緩沖區,通過某些方法調用可以改變該序列的長度和內容。
原來StringBuilder是個字符串的緩沖區,即它是一個容器,容器中可以裝很多字符串。并且能夠對其中的字符串進行各種操作。
它的內部擁有一個數組用來存放字符串內容,進行字符串拼接時,直接在數組中加入新內容。StringBuilder會自動維護數組的擴容。原理如下圖所示:(默認16字符空間,超過自動擴充)
2.1 StringBuilder構造方法
范例
public class Demo { public static void main(String[] args) { //創建空白可改變字符串對象 StringBuilder sb = new StringBuilder(); System.out.println("sb:"+sb); //sb: System.out.println("sb.length():"+sb.length()); //sb.length():0 //根據字符串內容創建對象 StringBuilder sb2 = new StringBuilder("hello"); System.out.println("sb2:"+sb2); //sb2:hello System.out.println("sb2.length():"+sb2.length()); //5 } }
2.2 StringBuilder常用方法
2.3 StringBuilder 和 String 相互轉換
1.StringBuilder 轉換為 String
2.String 轉換為 StringBuilder
Java 數據結構
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。