先说实际应用
private void saveCategoryBrand(List<Long> cids, Long bid) { //传入long集合
List<CategoryBrand> categoryBrands =
cids.stream() //转为流对象
.map(cid -> CategoryBrand.of(cid, bid)) //更改类型为CategoryBrand对象
.collect(Collectors.toList()); //添加到集合
this.categoryBrandService.saveBatch(categoryBrands);
}
集合,数组转为流对象
//获取 Collection集合中的Stream流对象
List<String> list = new ArrayList<>();
list.add("测试数据");
//获取List集合中的流对象
Stream<String> stream1 = list.stream();
//获取Map集合中的Stream流对象
Map<String,String> map = new HashMap<>();
Set<Map.Entry<String, String>> entries = map.entrySet();
Stream<Map.Entry<String, String>> stream2 = entries.stream();
//获取数组的Stream流对象
int[] array = new int[3];
Stream<int[]> stream3 = Stream.of(array);
流对象转集合,数组
//收集到List集合
List<String> list = s1.collect(Collectors.toList());
//收集到set集合
Set<String> set = s2.collect(Collectors.toSet());
//收集到数组中
Object[] arr = s3.toArray();
System.out.println(Arrays.toString(arr));
api
有forEach,count,filter,limit,skip,map,concat,前两个是终结方法