- 类型参数:
-
T- 迭代器返回的元素类型
- 所有已知的子接口:
-
BeanContext,BeanContextServices,BlockingDeque<E>,BlockingQueue<E>,Collection<E>,Deque<E>,DirectoryStream<T>,EventSet,List<E>,NavigableSet<E>,NodeSetData<T>,Path,Queue<E>,SecureDirectoryStream<T>,SequencedCollection<E>,SequencedSet<E>,Set<E>,SortedSet<E>,TransferQueue<E>,XPathNodes
- 所有已知的实现类:
-
AbstractCollection,AbstractList,AbstractQueue,AbstractSequentialList,AbstractSet,ArrayBlockingQueue,ArrayDeque,ArrayList,AttributeList,BatchUpdateException,BeanContextServicesSupport,BeanContextSupport,ConcurrentHashMap.KeySetView,ConcurrentLinkedDeque,ConcurrentLinkedQueue,ConcurrentSkipListSet,CopyOnWriteArrayList,CopyOnWriteArraySet,DataTruncation,DelayQueue,DocTreePath,EnumSet,HashSet,JobStateReasons,LinkedBlockingDeque,LinkedBlockingQueue,LinkedHashSet,LinkedList,LinkedTransferQueue,PriorityBlockingQueue,PriorityQueue,RoleList,RoleUnresolvedList,RowSetWarning,SerialException,ServiceLoader,SQLClientInfoException,SQLDataException,SQLException,SQLFeatureNotSupportedException,SQLIntegrityConstraintViolationException,SQLInvalidAuthorizationSpecException,SQLNonTransientConnectionException,SQLNonTransientException,SQLRecoverableException,SQLSyntaxErrorException,SQLTimeoutException,SQLTransactionRollbackException,SQLTransientConnectionException,SQLTransientException,SQLWarning,Stack,SyncFactoryException,SynchronousQueue,SyncProviderException,TreePath,TreeSet,Vector
public interface Iterable<T>
实现此接口允许对象成为增强的
for语句的目标(有时称为“for-each循环”语句)。
- 参见 Java 语言规范:
-
14.14.2 增强的
for语句
- 自版本:
- 1.5
-
Method Summary
Modifier and TypeMethodDescriptiondefault void对Iterable的每个元素执行给定操作,直到所有元素都已处理完或操作引发异常。iterator()返回一个元素类型为T的迭代器。default Spliterator<T> 创建一个Iterable描述的元素的Spliterator。
-
Method Details
-
iterator
返回一个元素类型为T的迭代器。- 返回:
- 一个迭代器。
-
forEach
对Iterable的每个元素执行给定操作,直到所有元素都已处理完或操作引发异常。如果指定了顺序,则按迭代顺序执行操作。操作引发的异常将传递给调用者。如果操作执行会修改元素的底层源的副作用,则此方法的行为是未指定的,除非覆盖类已指定了并发修改策略。
- 实现要求:
-
默认实现的行为如下:
for (T t : this) action.accept(t); - 参数:
-
action- 每个元素要执行的操作 - 抛出:
-
NullPointerException- 如果指定的操作为null - 自从:
- 1.8
-
spliterator
创建一个由这个Iterable描述的元素上的Spliterator。- 实现要求:
-
默认实现从可迭代对象的
Iterator创建一个早期绑定的分割迭代器。该分割迭代器继承了可迭代对象迭代器的快速失败属性。 - 实现注意:
- 默认实现通常应该被重写。默认实现返回的分割迭代器具有较差的分割能力,没有固定大小,并且不报告任何分割迭代器特性。实现类几乎总是可以提供更好的实现。
- 返回:
-
一个由这个
Iterable描述的元素上的Spliterator。 - 自从:
- 1.8
-