基于Java中字符串indexof() 的使用方法
Java中字符串中子串的查找共有四種方法(indexof())
indexOf 方法返回一個(gè)整數(shù)值,指出 String 對(duì)象內(nèi)子字符串的開始位置。如果沒有找到子字符串,則返回-1。
如果 startindex 是負(fù)數(shù),則 startindex 被當(dāng)作零。如果它比最大的字符位置索引還大,則它被當(dāng)作最大的可能索引。
Java中字符串中子串的查找共有四種方法,如下:
1、int indexOf(String str) :返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。
2、int indexOf(String str, int startIndex):從指定的索引處開始,返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。
3、int lastIndexOf(String str) :返回在此字符串中最右邊出現(xiàn)的指定子字符串的索引。
4、int lastIndexOf(String str, int startIndex) :從指定的索引處開始向后搜索,返回在此字符串中最后一次出現(xiàn)的指定子字符串的索引。
public class Test {
public static void main(String[] args) {
String s = "xXccxxxXX";
// 從頭開始查找是否存在指定的字符 //結(jié)果如下
System.out.println(s.indexOf("c")); //2
// 從第四個(gè)字符位置開始往后繼續(xù)查找,包含當(dāng)前位置
System.out.println(s.indexOf("c", 3)); //3
//若指定字符串中沒有該字符則系統(tǒng)返回-1
System.out.println(s.indexOf("y")); //-1
System.out.println(s.lastIndexOf("x")); //6
}
}
雖然簡單,我就做個(gè)筆記。
private static void testIndexOf() {
String string = "aaa456ac";
//查找指定字符是在字符串中的下標(biāo)。在則返回所在字符串下標(biāo);不在則返回-1.
System.out.println(string.indexOf("b"));//indexOf(String str);返回結(jié)果:-1,"b"不存在
// 從第四個(gè)字符位置開始往后繼續(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,這個(gè)是字符型變量,不是字符串。字符a對(duì)應(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
//這個(gè)就是靈活運(yùn)用String類提供的方法,拆分提供的字符串。
//String s = "D:\\Android\\sdk\\add-ons";
//System.out.println(s);
//while (s.lastIndexOf("\\") > 0) {
// s = s.substring(0, s.lastIndexOf("\\"));
// System.out.println(s);
//}
}
上面代碼的運(yùn)行結(jié)果如下:

以上這篇基于Java中字符串indexof() 的使用方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MyBatis如何處理MySQL字段類型date與datetime
這篇文章主要介紹了MyBatis如何處理MySQL字段類型date與datetime問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
java定時(shí)調(diào)度器(Quartz)使用實(shí)例
這篇文章主要介紹了java開源定時(shí)調(diào)度器使用方法2013-12-12
面向?qū)ο蠛兔嫦蜻^程的區(qū)別(動(dòng)力節(jié)點(diǎn)java學(xué)院整理)
很多朋友不清楚面向?qū)ο蠛兔嫦蜻^程有什么區(qū)別,接下來小編給大家整理了關(guān)于面向?qū)ο蠛兔嫦蜻^程的區(qū)別講解,感興趣的朋友可以參考下2017-04-04
java編程之基于SpringBoot框架實(shí)現(xiàn)掃碼登錄
本文將介紹基于SpringBoot + Vue + Android實(shí)現(xiàn)的掃碼登錄demo的總體思路,文中附含詳細(xì)示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-09-09
springcloud整合gateway實(shí)現(xiàn)網(wǎng)關(guān)全局過濾器功能
本文主要介紹了springcloud整合gateway實(shí)現(xiàn)網(wǎng)關(guān)全局過濾器功能,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
Java線程重復(fù)執(zhí)行以及操作共享變量的代碼示例
這篇文章主要介紹了Java中對(duì)線程重復(fù)執(zhí)行以及操作共享變量的代碼示例,來自于Java面試題目的練習(xí)整理,需要的朋友可以參考下2015-12-12

