1. 聲明字符串的方法:數組
String s="你好";安全
String s=new String("你好");app
2. 字符串的長度性能
字符串.length();線程
3. 字符串的比較對象
字符串.equals(字符串2);內存
比較兩個字符串的值是否相等,返回boolean類型的值。若是相同,則返回true;不然返回false。字符串
4. equals與==字符串處理
equals比較的值,判斷兩個字符串對象的值是否相等,通常用於字符串的比較;string
==比較的是地址,即判斷是不是同一個字符串,對象通常用於數字的比較。
注意:
1) 用equals()比較,肯定值放在前面,以防止空的字符串報錯(空的字符串null是沒法被equals所調用)。
2) 調用length()方法返回的結果就是字符串的字符數。
3) 進行equas比較,還用注意字符串大小,如大小寫不同,也會返回false,這時就可用到equalsIgnoeCase()方法,忽略字符的大小寫。
5. equalsIgnore比較時忽略大小寫
toLowerCase()轉換爲小寫,例:name.tolowerCase();
toUpperCase()轉換爲大寫,例:name.toUpperCase();
6. 複雜字符串處理
\:轉義符
拼接字符串用「+」或concat()方法,當原字符串是有效字符串時,在其後拼接新的字符串時,會建立副本:
例:String str="你好"; str=str+"北京";
String str=new Sting("你好");
str.concat("北京");
使用「+」和concat()方法,會形成內存浪費,性能比較差,但線程安全。
注意:
在使用「+」運算符鏈接字符串和int(或double)類型數據時,「+」將int(或double)類型數據自動轉換成String類型。
7. 字符串的提取和查詢
index(參數):獲取字符或字符串的下標。
indexOf()方法
該方法是在字符串內搜索某字的字符或字符串,它返回出現第一個匹配字的位置;若是沒有找到匹配,則返回-1,調用是,括號裏寫明要搜索的字符(或字符串)的名字。
例:
String s="青春無悔";
int index=s.indexOf("春」);
執行後,返回字符「春」的位置是1.
8. lastIndexOf()方法:
獲取最後一個字符或字符串的下標
例如:String s="青春無悔無悔青春」;
int index=s.lastIndexOf("青春」);
執行後,返回字符串「青春」的首字符位置,index的值爲6;
9. subString(參數):截取字符串
substring(int index); 下標從0開始數,從index開始截取到最後結束。
例如:要提取字符串「青春無悔」中的「春無悔」。
String s=「青春無悔」;
String result=s.substring();
10. substring(int beginIndex,int endIndex);下標從0開始數
從beginIndex開始,包括beginIndex位置
到endIndex結束,不包括endIndex位置
例如:要提取「青春無悔無悔青春」中的「無悔無悔」;
String s="青春無悔無悔青春";
String result=s.substring(2,6);
11. trim()方法
去字符串先後空格
12. 字符串的拆分
split()方法:分割字符串,返回數組。
例如:String str="長亭外-古道邊-草碧連天-留底」;
String[] word=str.split("-");
for(int i=0;i<word.length;i++){
System.out.println(word[i]);
}
13. StringBuffer類 頻繁拼接字符時使用
例:StringBuffer sbuf=new StringBuffer("你");
sbuf.apped("好嗎?」);
sbuf.apped(1,"們」);
String str=sbuf.toString();
System.out.println(str);
特色:在自身上追加字符串,不會產生副本,因此節省內存,性能高,縣城安全