子串
import java.io.*;
public class zichuan {
public static void main (String[] args)throws IOException {
String a,b;
BufferedReader bin=new BufferedReader(new InputStreamReader(System.in));
a=bin.readLine();
b=bin.readLine();
int c = b.indexOf(a);
if(c<0){
System.out.println("不是子串");}
else{
System.out.println("子串");
}
}
}
我的子串判断哪里写错了 望纠正
[最优解释]
LZ应该自己多看看API java.lang.String类 indexof(String str)这个方法表示 返回第一次出现的指定子字符串str在此字符串中的索引
[其他解释]
判断上没错,indexOf或contains方法都可以判断
问题是你从文件读出来的时候,要保证文件有数据,如果没有的话,a或b就有可能是null,所以稳妥的做法是判断a,b不是null,再判断是不是子串
[其他解释]
我现在输出来一直是非子串 我写2个ABC 还是这样 怎么回事
[其他解释]
8好意思,看错了,不是从文件读,而是系统输入,这样应该没有null,只有Empty,应该没关系
话说,LZ是想判断谁是谁的子串?
[其他解释]
我要判断 第一个是否是第二个的子串
[其他解释]
那应该没问题的,LZ可以a和b打印出来看看
[其他解释]
abcabc
abcabcabcabc
不是子串
Process completed.
为什么会这样
[其他解释]
abcabcabc
abc
不是子串
Process completed.
[其他解释]
LZ确信输入的时候没有空格?
如果没有空格,那就真的是怪了
[其他解释]
没有啊 挨着这么近 我换布尔那个判断也是固定在一个输出上 我哪里写错了?
[其他解释]
编码?
[其他解释]
1楼不是吗。。。。
[其他解释]
到底哪里错了 求指教
[其他解释]
是否与运行参数有关?
[其他解释]
刚运行了一下你的代码
结果
abcabc
abcabcabcabc
子串
abcabcabc
abc
不是子串