描述下问题:
今天我在使用java的 Obj.indexOf("xxx") 的时候,发现不管结果是true还是false,都会进行受限的方法体内。
这个问题我不知道是为什么,谁给解答下啊。
代码如下:
上面的运行中的代码,结果明显是false,但是还是进入了方法体了。
下面的就可以:
附上代码:
// 这段代码不好使
for (KbjcbEntity jcbEnt : jcList) {
jcmcTemp = ","+jcbEnt.getJcmc()+",";
demo = ","+ jc +",";
if(jcmcTemp.indexOf(demo) >= 0){
ent.setValue3(jcbEnt.getJc());
}
}
// 这段代码好使
for (KbjcbEntity jcbEnt : jcList) {
jcmcTemp = ","+jcbEnt.getJcmc()+",";
demo = ","+ jc +",";
int ret = jcmcTemp.indexOf(demo);
if(ret >= 0){
ent.setValue3(jcbEnt.getJc());
}
System.out.println();
}
// 测试的时候,代码的值跟断点时的值是一样的,但是这里的代码就好使
String aa = ",6,7,";
if(aa.indexOf(",2,") != -1){
System.out.println("11");
}else{
System.out.println("22");
}