public class IfSubstring {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入长字符串:");
String ss = scanner.next();
System.out.println("请输入短字符串:");
String s = scanner.next();
IfSubstring i = new IfSubstring();
String aString = i.ifSubstring(ss, s);
if(aString != null) {
int index = 0;
System.out.println("存在子串!!");
System.out.print("出现的位置是:");
0-
System.out.print(aString+" ");
}
else {
System.out.println("没有相同的子串");
}
}
public String ifSubstring(String ss, String s) {
StringBuffer sb = new StringBuffer();
int index = -1;
for(int i = 0;i < ss.length();i++) {
index = ss.indexOf(s, index+1);
if(index == -1) {
break;
}
else {
sb.append(index + 1 +"");
}
}
return sb.toString();
}
}
利用stringbuffer类进行存储接收字符串位置下标index,因为它修饰的是字符串变量,是可以进行修改的,是和String类所不同的,充分利用String类中的方法(string.indexof())进行字符串搜索,并返回下标。
给定一个字符串,判断该字符串中是否包含某个子串.如果包含, 求出子串的所有出现位置
最新推荐文章于 2022-01-08 13:33:23 发布
本文介绍了一种使用Java实现的检查一个字符串是否为另一个字符串子串的方法,并通过StringBuffer记录匹配到的子串及其在主串中的位置。利用了String类的indexOf方法进行高效搜索。
2711

被折叠的 条评论
为什么被折叠?



