Iterable<T>接口
https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html
public interface Iterable<T>
一、简介
T,表示迭代器返回的元素的类型。
一个object实现了这个接口,就能使用“for-each loop”语句。
二、方法
1、Iterator<T> iterator()
返回一个T类型元素的迭代器。
2、default void forEach(Consumer<? super T> action)
action,代表要对每个元素执行的操作。
对Iterable的每个元素执行给定的操作,直到处理完所有的元素或者操作抛出异常。除非实现类另有规定,否则按迭代顺序执行操作(如果指定了迭代顺序)。
该操作引发的异常会中继给调用者。
异常抛出,如果指定的action为空,抛出"NullPointerException"异常。
一般的实现为:
for (T t : this)
action.accept(t);
3、default Spliterator<T> spliterator()
根据此Iterable接口描述的元素创建Spliterator(这是一个用于遍历和分割数组、集合中元素的接口)
Iterable<T>接口的更多相关文章
- 12.Java中Comparable接口,Readable接口和Iterable接口
1.Comparable接口 说明:可比较(可排序的) 例子:按照MyClass的y属性进行生序排序 class MyClass implements Comparable<MyClass> ...
- Java迭代 : Iterator和Iterable接口
从英文意思去理解 Iterable :故名思议,实现了这个接口的集合对象支持迭代,是可迭代的.able结尾的表示 能...样,可以做.... Iterator: 在英语中or 结尾是都是表示 .. ...
- Java之iterator迭代器和iterable接口
java.lang.Iterable java.util.Iterator Iterator是迭代器类,而Iterable是接口. 好多类都实现了Iterable接口,这样对象就可以调用iterato ...
- Iterator、Iterable接口的使用及详解
Java集合类库将集合的接口与实现分离.同样的接口,可以有不同的实现. Java集合类的基本接口是Collection接口.而Collection接口必须实现Iterator接口. 以下图表示集合框架 ...
- java 集合框架(二)Iterable接口
Iterable接口是java 集合框架的顶级接口,实现此接口使集合对象可以通过迭代器遍历自身元素,我们可以看下它的成员方法 修饰符和返回值 方法名 描述 Iterator<T> iter ...
- Iterable接口
Iterable接口 总览 这个接口用来表明可以进行迭代.具体的迭代方式,可以通过iterator()方法获取到一个迭代器,在迭代器中会实现如何获取下一个元素,以及是否迭代结束. java8中源码如下 ...
- 【转】Java迭代:Iterator和Iterable接口
Java迭代 : Iterator和Iterable接口 从英文意思去理解 Iterable :故名思议,实现了这个接口的集合对象支持迭代,是可迭代的.able结尾的表示 能...样,可以做.... ...
- 为什么数组没有实现Iterable接口,但可以使用foreach语句遍历
在Java中,对于数组为什么能够使用foreach语句一直感觉很困惑. 对于能够使用foreach语句进行遍历的对象,只有两种情况,其中一种是遍历对象必须实现Iterable接口,实现ierator( ...
- Java集合【3】-- iterable接口超级详细解析
目录 iterable接口 1. 内部定义的方法 1.1 iterator()方法 1.2 forEach()方法 1.3 spliterator()方法 总结 iterable接口 整个接口框架关系 ...
- Hadoop提供的reduce函数中Iterable 接口只能遍历一次的问题
今天在写MapReduce中的reduce函数时,碰到个问题,特此记录一下: void reduce(key, Iterable<*>values,...) { for(* v:value ...
随机推荐
- Eureka 服务注册列表显示IP问题研究
在研究Spring Cloud的过程中,本地搭建好Eureka注册中心之后,发现Eureka服务页面显示的服务是机器名:端口的格式,并不是IP+端口的形式. 如下图: 具体搭建过程我就不再贴代码了,参 ...
- C++入门经典-例7.4-类的静态成员,我们共有一个地球
1:静态数据在程序开始时即获得空间,直到程序结束后才被收回.静态数据可以声明在函数体内,也可以声明在函数体外. 类中的静态成员与非静态成员有很大区别.从使用上来将,调用静态成员不需要实例化对象,而是以 ...
- 阿里云服务器yum源更新问题
阿里云官网也给出了yum卸载重装以及修改源为阿里云内网的文档.步骤这里就不说了,可点击下面的链接进行参考 https://help.aliyun.com/knowledge_detail/670864 ...
- vue 的多页面应用
vue-cli3 中构建多页面的应用 第一步:先创建一个 vue-cli3 的项目:vue create app 然后运行项目:npm run serve 现在开始多页面的应用: 首先在 src 的目 ...
- ReentrantLock源码探究1:非公平锁的获取和释放
1.AQS简单介绍 Sync是ReentrantLock的一个内部类,它继承了AbstractQueuedSynchronizer,即AQS,在CountDownLatch.FutureTask. ...
- win10 c++程序打包
步骤如下: 1. 先动态编译连链接,生成exe: 2. 找到exe依赖的dll文件 使用Process Explore来获取所依赖的dll文件 打开procexp.exe,通过菜单View–Lower ...
- nuros安全报告
We believe that great technology should benefit everyone. Self-driving vehicles promise to save live ...
- 小D课堂 - 新版本微服务springcloud+Docker教程_2_01传统架构演进到分布式架构
笔记 第二章 架构演进和分布式系统基础知识 1.传统架构演进到分布式架构 简介:讲解单机应用和分布式应用架构演进基础知识 (画图) 高可用 LVS+keepalive :负载均衡的知识点 1. ...
- Hibernate5+Spring4整合
(1) pom.xml <!--Spring Object/Relational Mapping --> <dependency> <groupId>org.spr ...
- C# 实现opc ua服务器的远程连接(转)
原文转自:https://www.cnblogs.com/dathlin/p/7724834.html OPC UA简介 OPC是应用于工业通信的,在windows环境的下一种通讯技术,原有的通信技术 ...