28. 實現(xiàn) strStr() - 力扣(LeetCode) (leetcode-cn.com)
class?Solution?{
????public?int?strStr(String?haystack,?String?needle)?{
????????/**
?????????*?如果needle長度為0,返回0
?????????*?循環(huán)體分別使用i,j指向兩個字符串開始位置,循環(huán)條件i<haystack.length?&&?j<needle.length()
?????????*?????如果haystack.charAt(i)==needle.charAt(j)?i++,j++?用res?=?i更新位置
?????????*?????如果haystack.charAt(i)!=needle.charAt(j)?i++
?????????*?退出循環(huán)時,如果j==needle.length(),則開始位置為
?????????*?j<=needle的長度,返回-1
?????????*?*/
????????if(needle.length()<1)?return?0;
????????int?i=0,j=0,res=0;
????????while(i<haystack.length()&&j<needle.length())?{
????????????if?(haystack.charAt(i)?==?needle.charAt(j)){
????????????????j++;
????????????}
????????????j?=?0;
????????????i++;
????????}
????????if(j==needle.length())?res?=?i-j;
????????else?res?=?-1;
????????return?res;
????}
}