Java Stream流的使用

获取Stream流
  • 单列集合直接使用stream()方法
java 复制代码
List<String> list = Arrays.asList("a", "b", "c"); Stream<String> stream = list.stream(); // 获取顺序流
  • 数组使用静态方法Arrays.stream()
java 复制代码
String[] array = {"a", "b", "c"}; // 获取整个数组的Stream 
Stream<String> arrayStream = Arrays.stream(array);
  • 零散数据使用Stream.of() ,需要保证它们的数据类型相同
java 复制代码
Stream<Integer> numberStream = Stream.of(1, 2, 3, 4, 5);
Stream<String> stringStream = Stream.of("one", "two", "three");
  • map获取stream流之前需要先进行转换
java 复制代码
Map<String, Integer> map = new HashMap<>();
map.put("a", 1);
map.put("b", 2);

// 获取键的Stream
Stream<String> keyStream = map.keySet().stream();

// 获取值的Stream
Stream<Integer> valueStream = map.values().stream();

// 获取键值对的Stream
Stream<Map.Entry<String, Integer>> entryStream = map.entrySet().stream();
中间方法
  • 对于distinct方法,如果是自定义对象,记得重写equalshashCode方法
相关推荐
m0_7487080518 分钟前
C++中的观察者模式实战
开发语言·c++·算法
电商API_1800790524727 分钟前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
qq_5375626731 分钟前
跨语言调用C++接口
开发语言·c++·算法
wjs202441 分钟前
DOM CDATA
开发语言
一点程序41 分钟前
基于SpringBoot的选课调查系统
java·spring boot·后端·选课调查系统
Tingjct43 分钟前
【初阶数据结构-二叉树】
c语言·开发语言·数据结构·算法
C雨后彩虹43 分钟前
计算疫情扩散时间
java·数据结构·算法·华为·面试
2401_8321319544 分钟前
Python单元测试(unittest)实战指南
jvm·数据库·python
2601_949809591 小时前
flutter_for_openharmony家庭相册app实战+我的Tab实现
java·javascript·flutter
猷咪1 小时前
C++基础
开发语言·c++