Jes*_*rak 1 java for-loop if-statement
我正在寻找这两个问题的答案,因为任何一个都适用于我的代码.是否有完全重启for循环或重新运行if语句的函数或其他内容?对于for循环,让我们说它是
for(int i = 0; i<=30; i++){
//code here
}
Run Code Online (Sandbox Code Playgroud)
它已经到了这一点i = 5,我该怎么告诉它回去i = 0?
对于if声明,我们说if声明是:
if(i == 1 && j == 2){
//more code here
}
Run Code Online (Sandbox Code Playgroud)
在if声明结束时,如果if声明是true完全重新运行if声明,我该怎么说呢?
TL; DR听起来你想要一个while循环或者可能是一个递归函数.
for环路版本您无法重新启动if语句,但可以在循环中修改循环控制变量for.只需i = 0;注意无限循环,如下所示:
for(int i = 0; i < 30; i++) {
// do stuff
if(someCondition) {
i = 0;
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这不是很好的风格,并且可能导致一些难以找到的恶魔.人们不习惯在循环中寻找对循环控制变量的修改,for因为它是你的那些东西之一.只是.别.做.
while环路版本因此,如果您计划在循环内部进行修改for,则应使用while循环而不是i循环.
例:
int i = 0;
while(i < 30) {
// do stuff
if(someCondition) {
i = 0;
} else {
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
根据您真正想要做的事情,您可能还会考虑创建一个函数并递归调用它:
function myFunction() {
// do stuff
if(someCondition) {
myFunction(); // this is the recursion
}
}
for(int i = 0; i < 30; i++) {
myFunction();
}
Run Code Online (Sandbox Code Playgroud)
通过所有这些方法,注意无限循环!如果你不小心,它们很容易创建.
| 归档时间: |
|
| 查看次数: |
8953 次 |
| 最近记录: |