forEach和for in对比
文章思路来自一次dart的踩坑经历,为了下次使用不再纠结。
既然forEach是基于for in (增强型for循环)的封装,那么 forEach 会比 for in 好用吗?
了解forEach、for in
forEach 和 for in 是通过 Iterator 进行遍历
比较下 forEach 的源码,可以看到 forEach 是基于for in (增强型for循环) 的封装,通过回调的方式执行代码块。那么为什么要做这一层封装呢?
// dart
void forEach(void f(E element)) {
for (E element in this) f(element);
}
// java
default void forEach(Consumer<? super T> action) {
Objects.requireNonNull(action);
for (