相关疑难解决方法(0)

Java:为什么不能遍历迭代器?

我读了为什么Java的迭代器不是Iterable?为什么不枚举可迭代?,但我仍然不明白为什么这样:

void foo(Iterator<X> it) {
  for (X x : it) {
    bar(x);
    baz(x);
  }
}
Run Code Online (Sandbox Code Playgroud)

没有成功.换句话说,除非我遗漏了某些东西,否则上面可能是一个很好的有效语法糖:

void foo(Iterator<X> it) {
  for (X x; it.hasNext();) {
    x = it.next();
    bar(x);
    baz(x);
  }
}
Run Code Online (Sandbox Code Playgroud)

java iterator iterable

20
推荐指数
4
解决办法
2万
查看次数

标签 统计

iterable ×1

iterator ×1

java ×1