2

Java 是否提供了一种方法来执行以下操作,而无需在单独的变量中声明数组?

for (String s : {"HEY", "THERE"}) {
    // ...
}

我能想到的最好的是:

for (String s : new ArrayList<String>() {{ add("HEY"); add("THERE"); }}) {
    // ...
}

这不漂亮。

4

2 回答 2

5

好吧,您至少可以这样做:

for (String s : new String[]{"HEY", "THERE"}) {
    // ...
}

由于Arrays 在 Java 中是“可迭代的”(尽管没有实现Iterable),因此您可以迭代 anArray而不是 an ArrayList,它也可以内联初始化。

于 2013-04-18T00:38:30.403 回答
5
for (String s : Arrays.asList("HEY", "THERE")) {
    // ...
}

不知道你为什么要这样做,但你有它。

于 2013-04-18T00:39:48.760 回答