Java中的新for循环可以与两个变量一起使用吗?

dog*_*ish 8 java

我们可以使用for(i = 0, j = 0; i<30; i++,j++)带有两个变量的旧for循环()我们可以在java中使用for-each循环(或增强的for循环)for(Item item : items)吗?有两个变量?它的语法是什么?

Tal*_*ala 10

不,你不能.它是使用Iterator的语法糖.请参阅此处以获得有关此问题的良好答案.

您需要一个包含两个变量的对象.

例如,它可以在Map对象上显示.

for (Map.Entry<String,String> e: map.entrySet()) {
    // you can use e.getKey() and e.getValue() here
}
Run Code Online (Sandbox Code Playgroud)


Mar*_*nik 10

不幸的是,Java只支持一个基本的foreach循环,称为增强的for循环.其他语言,特别是像Scala这样的FP,支持一种称为列表理解的构造(Scala称之为理解),它允许嵌套迭代,以及沿途过滤元素.