在for循环里,怎么让一段代码只执行一次?有什么巧妙的方法吗?

在循环里,怎么让一段代码只执行一次?有什么巧妙的方法吗?在循环里,怎么让一段代码只执行一次?有什么巧妙的方法吗?在循环里,怎么让一段代码只执行一次?有什么巧妙的方法吗?

ArrayList list = new ArrayList();
boolean fg = true;
for (String str : list) {
if (str 满足某个条件 && fg) {
fg = false;
你的代码1
}
你的代码2
}

我的理解是,你想要判断一些条件成立的时候执行一段代码,而且这段代码只在第一次条件成立的时候执行,之后就不再执行了。

基于上面的理解,你可以在循环外面生面一个变量作为哨兵(标记变量),第一次满足条件的时候将哨兵值设置为已经执行。
下次在进入循环的时候由于哨兵的值已经被设置为已执行状态,你想要跳过的代码段就可以不再获得执行机会了。

你是要遍历判断数组吗?

是啊,想不通你要做什么,执行一次为什么要放在循环里呢?
下面这段代码只执行两次
for (int i = 0; i < 5; i++) {
Log.e("Mr.Kang", "onCreate: " + i);
if (i >= 1) {

            return;
        }
    }

flag=0;
for(i=0;i<10;i++)
{
if(!flag)
func();

flag=1;

}

把循环次数设置成1不行吗?

for(int i = 0;i<10;i++)
{
方法();
break;//使用break跳出循环,这样程序只执行一次
}

for(int i=0;i<10;i++){
if(i=1){ //自己添加一个if条件语句就可以了。
break;
}
}
//但是如果仅需要执行一次,也不需要for循环那,直接赋值不就好了。

执行一次后直接break就行。

第一次执行完后直接break跳出循环不就行了吗?

你的需求不是很明确,要是让一段代码只执行一次而不影响for循环中其它代码的正常执行,就加个变量和条件判断,符合条件就执行,执行后修改变量,标识为已执行,再循环时不再执行

给那段代码加个if语句?判断一下?

给那段代码加个if语句?判断一下?

执行一次后直接break不知道是不是你想要的。

能不能换个判断方式,高大尚一点。

for(){

while(i==10){printf("\n");break;}

}

可以for循环内加if(i==0){

}

var num=0;
for(){
…………
if(num==0){
………… // 执行一次的代码
num++;
}
}

那还写循环干嘛,直接判断不就行了