一、字符串查找
①indexOf(String s)
該方法用於返回參數字符串s在指定字符串中首次出現的索引位置,當調用字符串的indexOf()方法時,會從當前字符串的開始位置搜索s的位置;如果沒有檢索到字符串s,該方法返回-1
②lastIndexOf(String str)
該方法用於返回字符串最后一次出現的索引位置。當調用字符串的lastIndexOf()方法時,會從當前字符串的開始位置檢索參數字符串str,並將最后一次出現str的索引位置返回。如果沒有檢索到字符串str,該方法返回-1.
如果lastIndexOf方法中的參數是空字符串”” ,則返回的結果與length方法的返回結果相同。
二、獲取指定索引位置的字符
使用charAt()方法可將指定索引處的字符返回。
三、獲取子字符串
substring(int beginIndex)
該方法返回的是從指定的索引位置開始截取知道該字符串結尾的子串。
四、去除空格(只去掉首尾多余的空格)
trim()方法返回字符串的副本,忽略前導空格和尾部空格。
五、字符串替換
replace(oldchar,newChar)方法可實現將指定的字符或字符串替換成新的字符或字符串
oldChar:要替換的字符或字符串
newChar:用於替換原來字符串的內容
如果要替換的字符oldChar在字符串中重復出現多次,replace()方法會將所有oldChar全部替換成newChar。需要注意的是,要替換的字符oldChar的大小寫要與原字符串中字符的大小寫保持一致。
六、判斷字符串的開始與結尾
startsWith()方法與endsWith()方法分別用於判斷字符串是否以指定的內容開始或結束。這兩個方法的返回值都為boolean類型。
1. startsWith(String prefix)
該方法用於判斷當前字符串對象的前綴是否是參數指定的字符串。
2. endsWith(String suffix)
該方法用於判斷當前字符串是否以給定的子字符串結束
七、判斷字符串是否相等
equals(String otherstr)
如果兩個字符串具有相同的字符和長度,則使用equals()方法比較時,返回true。同時equals()方法比較時區分大小寫。
equalsIgnoreCase(String otherstr)
equalsIgnoreCase()方法與equals()類型,不過在比較時忽略了大小寫。
八、按字典順序比較兩個字符串
compareTo()方法為按字典順序比較兩個字符串,該比較基於字符串中各個字符的Unicode值,按字典順序將此String對象表示的字符序列與參數字符串所表示的字符序列進行比較。如果按字典順序此String對象位於參數字符串之前,則比較結果為一個負整數;如果按字典順序此String對象位於參數字符串之后,則比較結果為一個正整數;如果這兩個字符串相等,則結果為0.
九、字母大小寫轉換
字符串的toLowerCase()方法可將字符串中的所有字符從大寫字母改寫為小寫字母,而tuUpperCase()方法可將字符串中的小寫字母改寫為大寫字母。
十、字符串分割
使用split()方法可以使字符串按指定的分隔字符或字符串對內容進行分割,並將分割后的結果存放在字符數組中。
str.split(String sign);
十一、獲取字符串的長度 length
十二、把字符串轉化為相應的數值
int型Integer.parseInt(字符串)
long型Long.parseLong(字符串)
double型Double.valueOf(字符串).doubleValue()
十三、字符串數組與字符串之間的轉換
一個字符串可以變為一個字符 數組,同樣,也可以把一個字符數組,變為一個字符串。
在String類中提供了以下操作方法:
將字符串變為字符數組:
public char[] toCharArray()
public String(char[] value)
十四、字符串與byte數組的轉換
byte數組(字節數組),在一般的IO操作中會經常使用到。
在String類中提供了以下的方法可以進行字符串與字節數組間的轉換:
字符串變為字節數組:public byte[] getBytes()
將一個字節數組變為字符串:
將全部字節數組變為String:pbulic String(byte[] bytes)
將部分字節數組變為String:public String(byte[] bytes,int offset,int length)
public class Main { public static void main(String args[]) { String str = "Java is the best language!"; int num1 = str.indexOf("ava");// 字符串查找 System.out.println("ava最先出現的位置是"+num1); int num2 = str.lastIndexOf("lan"); System.out.println("lan最后出現的位置是"+num2); char str1 = str.charAt(6); // 獲取指定索引位置的字符 System.out.println("第六個字符為:"+str1); String str2 = str.substring(6); // 獲取子字符串 System.out.println("第六個以后的字符串為"+str2); String str3 = str.substring(6, 9); System.out.println("六到九的字符串為:"+str3); String str4 = str.trim(); // 去除空格 System.out.println("去掉空格后的字符串為:"+str4); // 字符串替換 String str5 = str.replace("Java", "Chinese");// 方法可實現將指定的字符或字符串替換成新的字符或字符串 System.out.println("將java替換為chinese"+str5); // 判斷字符串的開始與結尾 Boolean bl1 = str.startsWith("J"); System.out.println("字符串以J開頭:"+bl1); Boolean bl2 = str.endsWith("J"); System.out.println("字符串以J結尾:"+bl2); // 字母大小寫轉換 String str6 = str.toLowerCase(); System.out.println("全轉為小寫后:"+str6); String str7 = str.toUpperCase(); // 字符串分割 System.out.println("全轉換為大寫后"+str7); String[] str8 = new String[8]; str8 = str.split("a", 5); System.out.println("將字符串用a分隔開,結果為:"); for(int i=0;i<str8.length;i++){ System.out.print(str8[i]); } System.out.print("結束"); } }
運行結果: