栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java集合源码笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java集合源码笔记

Iterable方法

forEach遍历函数的方法(更简洁)
default void forEach(Consumer action) {
Objects.requireNonNull(action);
for (T t : this) {
action.accept(t);
}
}
造轮子:
public class Speak {
private String hello=“我说:”;
public void iSpeak(Consumer ation){
ation.accept(hello);
}
}
final Speak speak = new Speak();
speak.iSpeak(item->{
System.out.println(item+“hello word!”);
});
//我说:hello word!

iterator是返回迭代器
Iterator iterator();

在Iterable描述的元素上创建一个Spliterator。 返回值: 这个Iterable描述的元素上的Spliterator。 实现 要求: 默认实现会从可迭代对象的Iterator创建一个早期绑定spliterator。spliterator继承了iterable迭代器的快速失败属性。 实现 说明: 通常应该重写默认实现。由默认实现返回的spliterator具有较差的分割功能,没有大小限制,并且不报告任何spliterator特征。实现类几乎总是可以提供更好的实现。
default Spliterator spliterator() {
return Spliterators.spliteratorUnknownSize(iterator(), 0);
}

Spliterator(splitable iterator可分割迭代器)接口是Java为了并行遍历数据源中的元素而设计的迭代器,这个可以类比最早Java提供的顺序遍历迭代器Iterator,但一个是顺序遍历,一个是并行遍历
ArrayList arrStr=new ArrayList<>();
arrStr.add(“1”);
arrStr.add(“2”);
arrStr.add(“3”);
arrStr.add(“4”);
arrStr.add(“5”);
arrStr.add(“6”);
final Spliterator spliterator = arrStr.spliterator();
final Spliterator spliterator1 = spliterator.trySplit();
final Spliterator spliterator2 = spliterator1;
while (spliterator.tryAdvance(item->{
System.out.println(item);
})){}
System.out.println(“--------------”);
while (spliterator1.tryAdvance(item->{
System.out.println(item);
})){}
System.out.println(“--------------”);
while (spliterator2.tryAdvance(item->{
System.out.println(item);
})){}
https://baijiahao.baidu.com/s?id=1649268592254063537&wfr=spider&for=pc

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/867121.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号