天天看點

Java學習筆記_19_String類

19.String類:

 1>String類的構造方法:

  · 利用字元串構造一個字元串對象:

    String str = “HelloWorld”;

  · 無參構造一個字元串對象:

    String str = new String();

  · 傳遞參數生成一個字元串對象:

    String str = new String(“HelloWorld”);

  · 由字元數組生成一個字元串對象:

    String str = new String(char s[ ]);

  · 由字元數組的一部分生成一個字元串對象:

    String str = new String(char [ ]value, int offset,int count);

  注:

    · Value[]代表生成的字元串數組,offset代表字元串在數組中的起始位置,

      count代表包含的字元個數。  

   · 使用雙引号得到的其實已經是一個String對象, 而new String(str)構造方法是對傳入的參數Str建立一個副本,  

     這樣其實是建立了兩個String對象。增加了性能開銷,不建議使 用該方法。

   · 在java中字元串必須使用“”擴起來。

   · String 是一個final類,代表不可變的字元序列。

   · 當直接在程式中使用“”來建立一個字元串時,該字元串就會存儲于字元串成常量池中,

     當再次使用“”建立一個字元串時會首   先查詢在常量池中是否已存在該字元串,如果已存在就無需再建立,

     直接指向該字元串即可。

 2>字元串對象操作:

  · charAt() :傳回的是index+1位置的字元。

  · equals和equalsIgnoreCase方法:

    equals用來判斷兩個對象的内容是否相同;

    equalsIgnoreCase用來判斷兩個對象的内容是否相同,  且忽略大小寫。

  · compareTo和compareToIgnoreCase方法:

     equals按詞典書序比較兩個字元串的大小; equalsIgnoreCase按詞典書序比較兩個字元串的大小,且忽略大小寫。

  · intdexOf(String str)方法:

    從字元串的頭開始檢索字元串str,并傳回首次出現str的

    位置,如果未檢索到,傳回-1.

  · intdexOf(String str,int stratPoint)方法:

   從字元串的指定的位置開始檢索字元串str,并傳回首次出 

   現str的位置,如果未檢索到,傳回-1.

  · lastIntdexOf(String str,int stratPoint)方法:

    從字元串的指定的位置開始檢索字元串str,并傳回最後出  現str的位置,如果未檢索到,傳回-1.

  · lastintdexOf(String str,int stratPoint)方法:

    從字元串的指定的位置開始檢索字元串str,并傳回最後出現str的位置,如果未檢索到,傳回-1.

  · startsWith、endsWith方法:

    用來檢測字元串是否以指定的字首開始或結束。

  · regionMatches方法:

    文法:regionMatches(int firstStart,String otherString, intotherStart,int length)

    注:從目前字元串的firstStart位置開始去指定長度為length的字元串,并将其與otherString字元串指定的字元串

           比較經行比較。其中otherString指定的字元串從otherStart開始,長度為length。傳回結果為true或false。

  · substring(int startPoint)方法:

    從原字元串的startPoint開始到結尾截取一個子字元串。

  · substring(int startPoint,int endPoint)方法:

    從原字元串的startPoint開始到endPoint結束截取一個子字元串。

  · replace(char oldchar,char newchar)方法:

    用newchar替換原字元串中的所有oldchar。

  · trim()方法:

    去掉字元串前後的空格。

  · concat():

    将指定字元串連接配接到原字元串尾部。

  · String []split(String regex)方法:

     根據給定的正規表達式的比對來拆分字元串。

  · getChars(int start,int end,char c[],int offset)方法:

    将字元串中的字元複制到字元數組中,其中原字元串從

    start開始到end結束中間的字元串複制到數組c[]中,并  

    從數組c的offset處開始存儲這些字元。需要注意的是c

    數組必須确定能容下這些字元。

   Split例子:

public class TestSplit {
public static void main(String[] args) {
// 建立一個字元數組
  String[] fakeFileData =   
                           { "justin\t64/5/26\t0939002302\t5433343",
           "momor\t68/7/23\t0939100391\t5432343" };
for (String data : fakeFileData) {
//将數組中的字元串以"\t"拆分存儲在新數組tokens中
String[] tokens = data.split("\t");
//輸出拆分後的數組
for (String token : tokens) {
System.out.print(token + "\t|");
}
System.out.println();
}
}
  }
           

  輸出結果為:

  justin |64/5/26 |0939002302 |5433343 |

  momor     |68/7/23 |0939100391 |5432343 |