可以使用indexOf()
和lastIndexOf()
方法獲取一個字元或字串在另外一個字串中的的索引。例如,
public class Main {
public static void main(String[] args) {
String str = new String("Apple");
int index = str.indexOf('p'); // index will have a value of 1
System.out.println(index);
index = str.indexOf("pl"); // index will have a value of 2
System.out.println(index);
index = str.lastIndexOf('p'); // index will have a value of 2
System.out.println(index);
index = str.lastIndexOf("pl"); // index will have a value of 2
System.out.println(index);
index = str.indexOf("k"); // index will have a value of -1
System.out.println(index);
}
}
上面的程式碼生成以下結果。
1
2
2
2
-1
indexOf()
方法從字串的開頭開始搜尋字元或字串,並返回第一個匹配的索引。lastIndexOf()
方法從末尾開始逆向匹配字元或字串,並返回第一個匹配的索引。如果在字串中沒有找到字元或字串,這些方法返回-1
。
startsWith()
檢查字串是否以指定的引數開頭,而endsWith()
檢查字串是否以指定的字串引數結尾。
兩個方法都返回一個布林值。
public class Main {
public static void main(String[] args) {
String str = "This is a test";
// Test str, if it starts with "This"
if (str.startsWith("This")) {
System.out.println("String starts with This");
} else {
System.out.println("String does not start with This");
}
// Test str, if it ends with "program"
if (str.endsWith("program")) {
System.out.println("String ends with program");
} else {
System.out.println("String does not end with program");
}
}
}
上面的程式碼生成以下結果。
String starts with This
String does not end with program