主題:原始數值流
一、需求
- 基于拆裝箱的成本考慮
- 提供特定的數值計算API,簡化使用。
二、種類
- IntStream
- LongStream
- DoubleStream
三、轉化手段
- Stream<T> 使用mapToInt,mapToLong,mapToDouble
- 原始數值流,使用boxed,mapToObject
三、demo:
int maxLen= Arrays.asList("abc","d","cdef","xyidfd","ab","")
.stream()
.mapToInt(String::length)
.max()
.getAsInt();
一個轉化的例子
Arrays.asList(2,3,1)
.stream()//Stream<Integer>
.mapToInt(Integer::valueOf)//IntStream
.boxed()//重新轉化為Stream<Integer>
.mapToLong(i->Long.valueOf(Integer.valueOf(i)))//LongStream
.mapToObj(Date::new)//Stream<Date>
.forEach(s-> System.out.println(s));