如果某个条件适用,我希望我的for循环不执行i ++.
for (int i = 0; i < r; i++) {
for (int j = 0; j < c; j = j+2) {
int n = (int)(Math.random()*(474))+1;
if(!myList.contains(n)) {
myList.add(n);
myList.add(n);
}
else {
//Do not do i++ and j = j+2
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果某个条件适用,我希望我的for循环不执行i ++.
那么你可能不想要一个for循环,你可能while只想要一个只在你不想要的情况下相反的增量for.我会做一个例子,但目前还不清楚你希望内环的条件如何影响外部.一般形式是:
int i = 0;
while (i < limit) {
if (/* Condition where you should increment */) {
++i;
}
}
Run Code Online (Sandbox Code Playgroud)
小心这个条件,确保你不会无休止地循环.
或者有时循环向后是一个更好的选择,但我不认为这适用于这种情况.
你想要从迭代器槽中移动i ++.您不需要完全限定for()语句.IE for(;;)在java中是合法的.
for (int i = 0; i < r; ) {
for (int j = 0; j < c; j = j+2) {
int n = (int)(Math.random()*(474))+1;
if(!myList.contains(n)) {
myList.add(n);
myList.add(n);
i++;
}
else {
//Do not do i++ and j = j+2
}
}
}
Run Code Online (Sandbox Code Playgroud)