概述
当我运行这段代码时,迭代器
iter
iter
每次都在外循环,但都没用!也就是说,在第一次迭代之后,iterable的长度为零!
String path = "somefile.csv";
try {
Reader in = new FileReader(path);
Iterable records = CSVFormat.RFC4180.withHeader(MetadataExtractorForTables.HeaderType.class)
.withDelimiter('t').parse(in);
// A stupid loop
for(int i = 0; i < 3; i++) {
Iterator iter = records.iterator();
System.out.println("---> " + Iterators.size(iter));
System.out.println("--> " + StreamSupport.stream(records.spliterator(), false).count());
/* ----------------------------------------
* here I would like to use the iterator
* in a (nested) loop
* ---------------------------------------- */
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
输出如下:
---> 191
--> 0
---> 0
--> 0
---> 0
--> 0
最后
以上就是等待丝袜为你收集整理的java iterator 嵌套_为什么java.util.Iterator不在嵌套循环中重置?的全部内容,希望文章能够帮你解决java iterator 嵌套_为什么java.util.Iterator不在嵌套循环中重置?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复