Java中要獲取字符在字符串中的位置,可以通過indexOf()函數(shù)來實(shí)現(xiàn)。
(推薦教程:java入門程序)
函數(shù)語法:
indexOf() 函數(shù)有以下四種形式:
-
public int indexOf(int ch): 返回指定字符在字符串中第一次出現(xiàn)處的索引,如果此字符串中沒有這樣的字符,則返回 -1。
-
public int indexOf(int ch, int fromIndex): 返回從 fromIndex 位置開始查找指定字符在字符串中第一次出現(xiàn)處的索引,如果此字符串中沒有這樣的字符,則返回 -1。
-
int indexOf(String str): 返回指定字符在字符串中第一次出現(xiàn)處的索引,如果此字符串中沒有這樣的字符,則返回 -1。
-
int indexOf(String str, int fromIndex): 返回從 fromIndex 位置開始查找指定字符在字符串中第一次出現(xiàn)處的索引,如果此字符串中沒有這樣的字符,則返回 -1。
參數(shù)介紹:
-
ch — 字符,Unicode 編碼。
-
fromIndex — 開始搜索的索引位置,第一個字符是 0 ,第二個是 1 ,以此類推。
-
str — 要搜索的子字符串。
(視頻教程推薦:java視頻教程)
代碼實(shí)現(xiàn):
public class Main { public static void main(String args[]) { String string = "aaa456ac"; //查找指定字符是在字符串中的下標(biāo)。在則返回所在字符串下標(biāo);不在則返回-1. System.out.println(string.indexOf("b")); // indexOf(String str); 返回結(jié)果:-1,"b"不存在 // 從第四個字符位置開始往后繼續(xù)查找,包含當(dāng)前位置 System.out.println(string.indexOf("a",3));//indexOf(String str, int fromIndex); 返回結(jié)果:6 //(與之前的差別:上面的參數(shù)是 String 類型,下面的參數(shù)是 int 類型)參考數(shù)據(jù):a-97,b-98,c-99 // 從頭開始查找是否存在指定的字符 System.out.println(string.indexOf(99));//indexOf(int ch);返回結(jié)果:7 System.out.println(string.indexOf('c'));//indexOf(int ch);返回結(jié)果:7 //從fromIndex查找ch,這個是字符型變量,不是字符串。字符a對應(yīng)的數(shù)字就是97。 System.out.println(string.indexOf(97,3));//indexOf(int ch, int fromIndex); 返回結(jié)果:6 System.out.println(string.indexOf('a',3));//indexOf(int ch, int fromIndex); 返回結(jié)果:6 }}
輸出結(jié)果:
-1 6 7 7 6 6