如何将Integer与整数数组进行比较

时间:2011-03-11 05:07:47

标签: java android

我是android新手。我想知道如何将Integer与整数数组进行比较。有一组整数数组(Ex)array_int = {1,2,3,4}和单整数int i = 2,这里我要比较两个整数,如果单个整数出现在数组整数中,我想要打破这个过程。

for(i=0;i<integerArray.length;i++){
    if(singleinteger!=integerArray[i]){ // some action       }
else{
// Stop the action  }

在这种情况下,它比较两个整数。并且在两个整数相等的时候进行中断,否则迭代动作直到循环结束。

4 个答案:

答案 0 :(得分:3)

对于简单的解决方案,请使用:

for (i = 0; i < intArray.length; i++) {
    if (singleInt != intArray[i]) {
        // some action
    } else {
        break;
    }
}

当两个值相等时,这将从循环中断开。但是,有些纯粹主义者不喜欢break的使用,因为它会引入可读性问题,如果你的some action很大(就代码行而言),那么尤其是删除远离for本身的退出条件。

要解决此问题,您可能需要考虑扭转if语句的意义,以便退出条件更接近for

for (i = 0; i < intArray.length; i++) {
    if (singleInt == intArray[i])
        break;

    // some action
}

这也可以让您删除elseelse本身,其内容),因为不再需要它了。

但是,如果你要这样做,你也可以将它完全融入for并完成它:

for (i = 0; (i < intArray.length) && (singleInt != intArray[i]); i++) {
    // some action
}

答案 1 :(得分:2)

Use a

break;
循环中的

答案 2 :(得分:1)

for(i = 0; i < integerArray.length; i++ {
    if(singleinteger != integerArray[i] { 
        //some action
    }
    else { 
        break; //add this line
    }
}

答案 3 :(得分:1)

如果您愿意,可以阅读整数测试here

否则,在您的代码中,您只是错过了循环的“退出”。

    for(i=0;i<integerArray.length;i++){
        if(singleinteger!=integerArray[i]){ // some action
    }else{
    // Stop the action  
       break;
    }

但这只是在您不需要处理数组的其余部分时。