1 string對象的創建
?靜態創建
??String s1 = "abc"; String s2 = "abc";
動態創建
String s3 = new String("abc"); String s4 = new String("abc");
2string對象的不可變性
任何一個String對象在創建之后都不能對它的內容作出任何改變
3字符串的比較
4字符與字符串之間的轉換
? 與字符數組的之間的轉換
? ??Char[] chars= "Java".toCharArray();
與字節數組之間的轉換
? ? public class TestStringByte{
? ? ? ? public static void main(String[] args) {
? ? ? ? ? ? String str = "Java語言程序設計";
? ? ? ? ? ? byte bytes[] = str.getBytes();
? ? ? ? ? ? System.out.println(bytes.length);
? ? ? ? }
? ? }
5 String的常用方法
(1) 求長度 .length
(2) 獲取字符串的字符 .charAt(下標,從零開始)
(3) 取子串 .substring(起始下標,結束下標)
(4)定位字符或字符串?
? ? ? ? ? ? ? ? ?str.indexOf('i')
????????????????str.indexOf('i',4)
????????????????str.indexOf("is")
????????????????str.indexOf("is",6)
(5)替換字符和字符串
????????????????str.replace('i','I')
????????????????replaceAll("is","IS")
????????????????replaceFirst("is","IS")
(6) 比較字符
????????????????str.equals("this")
????????????????str.equalsIgnoreCase("this")
(7)大小寫互換
????????????????str.toUpperCase()
????????????????str.toLowerCase()
(8)前綴和后綴
????????????????str.startsWith("this")
????????????????str.endsWith("this")
stringBuffer和StringBuilder類
由于String對象的不可變性,所以一個字符串的內容如果經常需要變動,就不應該使用String,因為在變化的過程中實際上是不斷創建對象的過程,這時候應該使用StringBuffer或者StringBuilder