在給定的字符串中查找字符或字符串是比較常見的操作。字符串查找分為兩種形式:一種是在字符串中獲取匹配字符(串)的索引值,另一種是在字符串中獲取指定索引位置的字符。
根據(jù)字符查找
String 類的 indexOf() 方法和 lastlndexOf() 方法用于在字符串中獲取匹配字符(串)的索引值。
1. indexOf() 方法
indexOf() 方法用于返回字符(串)在指定字符串中首次出現(xiàn)的索引位置,如果能找到,則返回索引值,否則返回 -1。該方法主要有兩種重載形式:
其中,str 表示指定字符串;value 表示待查找的字符(串);fromIndex 表示查找時(shí)的起始索引,如果不指定 fromIndex,則默認(rèn)從指定字符串中的開始位置(即 fromIndex 默認(rèn)為 0)開始查找。
例如,下列代碼在字符串“Hello Java”中查找字母 v 的索引位置。
上述代碼執(zhí)行后 size 的結(jié)果為 8,它的查找過程如圖 1 所示。

圖1 indexOf() 方法查找字符過程
例 1
編寫一個(gè)簡單的 Java 程序,演示 indexOf() 方法查找字符串的用法,并輸出結(jié)果。代碼如下:運(yùn)行后的輸出結(jié)果如下:
原始字符串是'today,monday,sunday'
indexOf("day")結(jié)果:2
indexOf("day",5)結(jié)果:9
indexOf("o")結(jié)果:1
indexOf("o",6)結(jié)果:7
2. lastlndexOf() 方法
lastIndexOf() 方法用于返回字符(串)在指定字符串中最后一次出現(xiàn)的索引位置,如果能找到則返回索引值,否則返回 -1。該方法也有兩種重載形式:
注意:lastIndexOf() 方法的查找策略是從右往左查找,如果不指定起始索引,則默認(rèn)從字符串的末尾開始查找。
例 2
編寫一個(gè)簡單的 Java 程序,演示 lastIndexOf() 方法查找字符串的用法,并輸出結(jié)果。代碼如下:運(yùn)行后的輸出結(jié)果如下:
原始字符串是'today,monday,Sunday'
lastIndexOf("day")結(jié)果:16
lastIndexOf("day",5)結(jié)果:2
lastIndexOf("o")結(jié)果:7
lastlndexOf("o",6)結(jié)果:1
根據(jù)索引查找
String 類的 charAt() 方法可以在字符串內(nèi)根據(jù)指定的索引查找字符,該方法的語法形式如下:
字符串名.charAt(索引值)
提示:字符串本質(zhì)上是字符數(shù)組,因此它也有索引,索引從零開始。
charAt() 方法的使用示例如下:文章來源:http://www.zghlxwxcb.cn/news/detail-782085.html
https://www.bilibili.com/video/BV12M411v7Mv/?p=4&spm_id_from=pageDriver&vd_source=96bd6c0a2bc667ee6713079257ccf5ad文章來源地址http://www.zghlxwxcb.cn/news/detail-782085.html
到了這里,關(guān)于Java字符串查找(3種方法)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!