/** Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.*********************/package java.lang;import java.util.Iterator;import java.util.Objects;import java.util.Spliterator;import java.util.Spliterators;import java.util.function.Consumer;/*** 实现这个接口允许一个对象成为for-each循环语句的目标 <p/>** Iterable 是 Java 中的一个顶级接口,位于 java.lang 包中。* 它是为了统一"可迭代对象"的概念而设计的,* 表示实现该接口的类可以提供一个迭代器 (Iterator) 来逐个访问其内部的元素 <p/>** @author chuming* @create 2021年12月29日 - 21:57**/public interface Iterable<T> {// 返回一个内部元素为T类型的迭代器(JDK1.5只有这个接口)// 获取一个迭代器Iterator<T> iterator();// 遍历内部元素,action意思为动作,指可以对每个元素进行操作(JDK1.8添加)// 增强for语句default void forEach(Consumer<? super T> action) {Objects.requireNonNull(action);for (T t : this) {action.accept(t);}}// 创建并返回一个可分割迭代器(JDK1.8添加),分割的迭代器主要是提供可以并行遍历元素的迭代器,可以适应现在cpu多核的能力,加快速度。//(划重点:并行遍历元素 并行!)default Spliterator<T> spliterator() {return Spliterators.spliteratorUnknownSize(iterator(), 0);}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。