for循环在第一次迭代中停止

时间:2015-07-01 01:12:00

标签: java arrays list for-loop

for p循环在下面java代码停止在第一次迭代中,我不知道为什么! 你能救我吗?

controllerSwitches元素是{1,2}

allSwithces元素是{1,2,3,4}

for (int p = 0; p < controllerSwitches.length; p++) 
{  
    switches tempSwitch = controllerSwitches[p];
    for (int w = 0; w <= allSwithces.size(); w++)
    {
        System.out.println(tempSwitch.getSwitchId() +"\t" + allSwithces.get(w).getSwitchId());
        if (allSwithces.get(w).getSwitchId().equals(tempSwitch.getSwitchId())) 
        { 
            failedControllerswitches.add(allSwithces.get(w)); // it is break after getting the first p index  
        }
        continue;
    }
    continue;
}

它获得第一个p索引并将其与allSwitches列表的所有元素进行比较,然后打破循环。我的意思是它没有进入第二个p指数。 输出是

1 1

1 2

1 3

1 4

它不会将controllerSwitches的第二个元素与allSwithces元素进行比较

1 个答案:

答案 0 :(得分:5)

  1. 外循环正在终止,因为内循环在比较结束时抛出<h3 id="turn"></h3> <table> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> <tr> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> </tr> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> <tr> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> </tr> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> <tr> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> </tr> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> <tr> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> </tr> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> <tr> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> </tr> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> <tr> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> <td class="box" onclick="fillBox(this)"></td> <td class="vLine" onclick="addLine(this)"></td> </tr> <tr> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> <td class="hLine" onclick="addLine(this)"></td> <td class="gap"></td> </tr> </table>
  2. 更改

    IndexOutOfBoundException

            for ( int w = 0; w <= allSwithces.size() ; w++)
    

    将打印所有组合。

    1. 你没有打破内循环。只是评论说它应该破坏但代码不会。

    2. for ( int w = 0; w < allSwithces.size() ; w++) 是多余的,因为代码会自动继续。删除它们。

    3. 此外,输入完整的代码会有所帮助,因为你肯定会在调用者中收到异常。