如何在循环外使用值

在下面的代码中,我需要varArray [i]的值来执行if-else语句,但是if-else语句只能执行一次。 如果我将if-else语句放在for循环之外,那么if-else语句会正确执行。 当我将if-else语句放在for循环中时,if-else语句会多次执行。
for (int i=0;i<varArray.length;i++) 
{
    varArray[i]= rand.nextInt(1999)-1000;
    System.out.println(varArray[i]);


    if(d==varArray[i])
    {
        System.out.println(d);      
        System.out.println(i+1);
    }  
    else if(d!=varArray[i])
    { 
        System.out.println(d);
        System.out.println(0);
    }
}
需要帮助。一直在寻找几个小时     
已邀请:
if(d==varArray[i])
你的意思是说(varArray [i] =='d')? 或
d
是变量?     
你可以使用休息; if语句为true时退出for循环。
for (int i = 0; i < varArray.length; i++) {
    varArray[i] = rand.nextInt(1999) - 1000;
    System.out.println(varArray[i]);

    if (d == varArray[i]) {
        System.out.println(d);      
        System.out.println(i + 1);
        break;
    }
    else if(d != varArray[i])
    { 
        System.out.println(d);
        System.out.println(0);
        break;
    }
}
    
for (int i = 0; i < varArray.length; i++)
{
    varArray[i] = rand.nextInt(1999) - 1000;
    System.out.println(varArray[i]);

    if (d == varArray[i])
    {
        System.out.println(d);      
        System.out.println(i + 1);
        break;
    }
    else if(d != varArray[i])
    { 
        System.out.println(d);
        System.out.println(0);
        break;
    }
}
当程序到达新添加的中断时(在此修改的代码段中),它将退出for循环。因此只执行一次。 作者想要编辑我的答案说: break语句使代码跳出for循环。 我希望for循环语句完全执行,但if-else应该只执行一次。 去做这个: Boolean didExecuteIfElse = false; for(int i = 0; i&lt; varArray.length; i ++) {     varArray [i] = rand.nextInt(1999) - 1000;     的System.out.println(varArray [I]);
if (didExecuteIfElse == false) {
     if (d == varArray[i])
     {
        System.out.println(d);      
        System.out.println(i + 1);
     }
     else if(d != varArray[i])
     { 
        System.out.println(d);
        System.out.println(0);
     }
     didExecuteIfElse = true;
 }
}
    

要回复问题请先登录注册