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,如果超過就會溢出,以負數的形式顯示。