Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中迭代列表_Java - Fatal编程技术网

在Java中迭代列表

在Java中迭代列表,java,Java,我有一个疑问:我可以迭代列表吗?我指的是一份清单,而不是一个收藏。我知道List是一个接口,但似乎可以使用数组.asList(String[])”在转换“String[]”后返回List 是可能的还是我错了?是的,有一个超级界面,因此(例如,如果您有一个名为列表的列表),您可以这样做 for (String str : list) // do something with `str` 这可能是对列表进行迭代的最简单方法(称为a for each循环)。事实上,您可以像这样对任何集合进行迭代

我有一个疑问:我可以迭代列表吗?我指的是一份清单,而不是一个收藏。我知道List是一个接口,但似乎可以使用数组.asList(String[])”在转换
“String[]
”后返回List

是可能的还是我错了?

是的,有一个超级界面,因此(例如,如果您有一个名为
列表的
列表),您可以这样做

for (String str : list)
  // do something with `str`
这可能是对列表进行迭代的最简单方法(称为a for each循环)。事实上,您可以像这样对任何
集合进行迭代。

返回一个
java.util.list
,这是一个。有什么问题

List yourList = Arrays.asList(yourStringArray);
for (String s : yourList) {
  // do something with s
}
或者更简单(您不需要列表)


您可以对列表、数组或包装数组的列表进行迭代。您可以使用带有while循环或for循环的迭代器对其进行迭代,但要对索引进行计数,或者使用for-each构造


没有很多方法可以做到这一点,我将不再添加这么多示例。

好吧,你尝试了什么?你搜索了什么?你看过API了吗?(提示:尝试
Enced for loop
iterate list
)测试怀疑的最佳方法是编写代码。这是你唯一的怀疑吗?对不起;-)如果(myList instanceof Iterable){System.out.println(“可以迭代列表”);}Google:在Java.TY中迭代列表以获得答案。好的,我知道。但是,如果列表是一个接口(无法实例化),为什么可能呢?迭代一个接口?或者那个引用(列表)是什么指向当前?好吧,实现
列表
接口的任何类的实例;无论是
数组列表
链接列表
、匿名类还是任何自定义类都没有区别-因为该类实现了
列表
,所以它也保证是
可编辑的
(正如我在回答中提到的)。因此,我们可以用for-each循环对其进行迭代。因此,如果我在
String[]
上使用
“asList”
,它将重新运行
ArrayList
List
或原始
List
?谢谢!正确,它不一定是
ArrayList
(因为该方法的返回类型不是
ArrayList
,而是简单的
List
),但它返回的肯定是
Iterable
。我明白了,谢谢你的回答。我之前不知道可以使用接口来实现。
for (String s : yourStringArray) {
  // do something with s
}