有人可以解释这一行

时间:2017-06-22 08:37:41

标签: java for-loop iterator

你好,我正在努力了解一个程序和一条线给我一些麻烦。你能解释一下这条线的构造,因为我从未见过像这样的“For”

for (Iterator<IBaseVO> itMachine = machinesSelected.iterator(); itMachine.hasNext();) {
            MachineVO mach = (MachineVO) itMachine.next();
            idsMachines.add(mach.getMchId());
        }

谢谢你

1 个答案:

答案 0 :(得分:1)

for循环可以有3个参数,但不是必需的。

通常是这样的

  1. 指令
  2. 布尔
  3. 指令
  4. 第一个和第三个可以安全地省略。

    所以这是用于初始化迭代器对象的第一个指令槽。

    第二个指令槽用于查看迭代器中是否有新项目。

    不需要第三个插槽,因此省略了。

    这与

    相同
    Iterator<IBaseVO> itMachine = machinesSelected.iterator();
    while (itMachine.hasNext()) {
                MachineVO mach = (MachineVO) itMachine.next();
                idsMachines.add(mach.getMchId());
            }