这里询问
当 scores[i]=0 或者 attList.get(i)==null的时候
下面的语句 for(int j=0;j<distinctList.size();j++){
if(attList.get(i).equals(distinctList.get(j)))
scores[i]=hash;
}就不运行了吗?
代码如下
for(int i=0;i<attList.size();i++){
if(scores[i]!=0 || attList.get(i)==null)
continue;
for(int j=0;j<distinctList.size();j++){
if(attList.get(i).equals(distinctList.get(j)))
scores[i]=hash;
}
当 scores[i]=0 或者 attList.get(i)==null的时候
下面的语句 for(int j=0;j<distinctList.size();j++){
if(attList.get(i).equals(distinctList.get(j)))
scores[i]=hash;
}就不运行了吗?
代码如下
for(int i=0;i<attList.size();i++){
if(scores[i]!=0 || attList.get(i)==null)
continue;
for(int j=0;j<distinctList.size();j++){
if(attList.get(i).equals(distinctList.get(j)))
scores[i]=hash;
}
for(int i=0; i<5; i++){
if(i==0)
continue;
System.out.println(i);
}
continue;
这是判断scores[i]!=0或者 attList.get(i)==null的时候就不运行那段代码了~~这种问题,最好自己跑一下,就知道了,这样还能对continue认识的更加深刻
要是有人回答你说能运行,你是信呢?还是自己实验呢?
你这样写当if(scores[i]!=0 || attList.get(i)==null)成立的时候会跳过后面的语句,继续循环,直到i>=attList.size();
才可以往下走, 否则直接跳到循环下一跳。 后面不执行
continue;
你的if 只管下面一行语句 下面得代码还是会执行的
以下这个例子可以让你更好的理解:public class TestOne { public static void main(String[] args) {
int[] a = {2};
for(int i=0; i<5; i++){
if(i==0)
continue;
for(int j = 0 ; j < a.length;j++){
System.out.println(a[j]);
}
}
}
}