0
点赞
收藏
分享

微信扫一扫

java8 stream的创建


构造实例:

// 数组
Stream stream = Stream.of("a", "b", "c"); //直接由数组生成
String [] strArray = new String[] {"a", "b", "c"};
stream = Stream.of(strArray);

stream = Arrays.stream(strArray); //相当于aslist,可以看做少了个as
// 集合
List<String> list = Arrays.asList(strArray);
stream = list.stream();

IntSream构造:

IntStream.of(new int[]{1, 2, 3}).forEach(System.out::println);
IntStream.range(1, 3).forEach(System.out::println); // 开区间
IntStream.rangeClosed(1, 3).forEach(System.out::println); // 闭区间

一些常用方法:

//forEach表示遍历
IntStream.of(1,2,3).map(n-> n*n).forEach(System.out::println); // map
IntStream.of(1,4,6,9).filter(n-> n>5).forEach(System.out::println); // filter

peek方法还不太懂,慢慢来.

有一点需要注意:
Stream.of()和list.stream() 是有区别的。
如果是集合,直接用.stream()
如果是数组,才用Stream.of()

ArrayList<Object> fruits = new ArrayList<>();
fruits.add("apple");
fruits.add("banana");
fruits.add("pair");
Stream.of(fruits).forEach(n-> System.out.println(n)); // 认为list是stream的第一个元素
fruits.stream().forEach(n-> System.out.println(n)); // 把list的元素作为stream 结果不一样


举报

相关推荐

Java8——stream

Java8 Stream

Java8 Stream的使用

Java8 Stream 机制

java8 stream foreach

0 条评论