天天看點

String和StringBuilder類方法和用法

String類 的常用方法:

方法 說明
int length() 傳回目前字元串的長度
int indexOf(int ch) 查找ch字元在該字元串中第一次出現的位置
int indexOf(String str) 查找str子字元串在該字元串中第一次出現的位置
int lastIndexOf(int ch) 查找ch字元在該字元串中最後一次出現的位置
int lastIndexOf(String str) 查找str子字元串在該字元串中最後一次出現的位置
String substring(int beginIndex) 擷取從beginIndex位置開始到結束的子字元串
String substring(int beginIndex,endIndex) 擷取從beginIndex位置開始到endIndex位置的子字元串
String trim() 傳回去除了前後空格的字元串
boolean equals(Object obj) 将該字元串與指定對象比較,傳回true或false
String toLowerCase() 将字元串轉換為小寫
String toUpperCase() 将字元串轉換為大寫
char charAt(int index) 擷取字元串中指定位置的字元
String[] split(String regex,int limit) 将字元串分割為子字元串,傳回字元串數組
byte getBytes() 将該字元串轉換byte數組
用法
String和StringBuilder類方法和用法

注:

1. 字元串 str 中字元的索引從0開始,範圍為 0 到 str.length()-1

2. 使用 indexOf 進行字元或字元串查找時,如果比對傳回位置索引;如果沒有比對結果,傳回 -1

3. 使用 substring(beginIndex , endIndex) 進行字元串截取時,包括 beginIndex 位置的字元,不包括 endIndex 位置的字元

4.通過str.charAt(int index)擷取字元後與指定字元a做對比,記得使用‘’單引号;且char基本類型是沒有方法的,不能調用equals(),是以寫為str.charAt(int index)==’a’的形式

StringBuilder類 的常用方法:

方法 說明
StringBuilder append(參數) 追加内容到目前StringBuilder對象的末尾
StringBuilder insert(位置,參數) 将内容插入到StringBuilder對象的指定位置
String toString() 将StringBuilder對象轉換為String對象
int length() 擷取字元串的長度
用法
String和StringBuilder類方法和用法

注:

當頻繁操作字元串時,系統會額外産生很多臨時變量。使用 StringBuilder 或 StringBuffer 就可以避免這個問題。至于 StringBuilder 和StringBuffer ,它們基本相似,不同之處,StringBuffer 是線程安全的,而 StringBuilder 則沒有實作線程安全功能,是以性能略高。是以一般情況下,如果需要建立一個内容可變的字元串對象,應優先考慮使用 StringBuilder 類。

關于位元組:

位元組是計算機存儲資訊的基本機關,1 個位元組等于 8 位, gbk 編碼中 1 個漢字字元存儲需要 2 個位元組,1 個英文字元存儲需要 1 個位元組。同時,漢字對應的位元組值為負數,原因在于每個位元組是 8 位,最大值不能超過 127,而漢字轉換為位元組後超過 127,如果超過就會溢出,以負數的形式顯示。