繁体   English   中英

Java中是否有其他替代方法可能对应于某些其他语言(如C#)中存在的foreach

[英]Is there any alternative In Java that may correspond to foreach that exists in some other languages like C#

Java中是否有其他替代方法可以与其他语言(例如C#或VB或其他语言)中的foreach{}相对应? 在某些非常特定的情况下,它有时可能非常有用并且几乎是强制性的。

Java中的以下while(){}循环是否可以被foreach循环或Java中可能存在并与foreach相对应的某些其他概念取代?

public class Demo
{
    public static void main(String[] args)
    {
        ArrayList<String> arrayList = new ArrayList<String>();

        arrayList.add("A");
        arrayList.add("B");
        arrayList.add("C");
        arrayList.add("D");
        arrayList.add("E");

        Iterator<String>it=arrayList.iterator();

        while(it.hasNext())
        {
            System.out.println(it.next());
        }
    }
}

我在Google上进行了长时间的搜索,但没有。

如果对象实现Iterable或它是一个数组,则可以使用增强的for-each循环(在Java 5.0中引入)

for(E e : MyCollection) {
    // stuff
}

如果你的例子,你可以做

ArrayList<String> list = new ArrayList<String>();
list.add("A");
list.add("B");
list.add("C");
list.add("D");
list.add("E");

for(String s : list) System.out.println(s);

从技术上讲,您的示例使用的是非参数列表,因此您将使用

for(Object o : arrayList) System.out.println(o.toString());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM