publicstaticvoidmain(String[] args){
List<Integer> list1 = Arrays.asList(1,2,3);
List<Integer> list2 = Arrays.asList(4,5,6);
List<Integer> list3 = Arrays.asList(7,8,9);
List<Integer> mergedList = Stream.of(list1, list2, list3).flatMap(Collection::stream).collect(Collectors.toList());
System.out.println(mergedList);// [1, 2, 3, 4, 5, 6, 7, 8, 9]
}
其余⼲货
1、⼀个集合根据主键msisdn去重,得到⼀个新的集合
List<Card> newList = list.stream().collect(Collectors.collectingAndThen(
Collectors.toCollection(()->new TreeSet<>(Comparator.comparing(Card::getMsisdn))),
ArrayList::new));
2、获取⼀个集合中,某个对象指定属性的集合
List<Long> msisdnList = kqCardList.stream().map(KqCard::getMsisdn).collect(Collectors.toList());
3、将⼀个long类型的集合转换为String类型的集合
List<String> msisdnStrList = msisdnList.stream().map(String::valueOf).collect(Collectors.toList());
4、遍历⼀个集合中,对每个对象的指定属性进⾏赋值(这⾥我对每个对象赋值了三个参数,最后⼀个是使⽤UUID做主键)
List<CmiDataAmount> cmiDataAmountList = cmiDataAmountList.stream().map(
cmiDataAmount ->{cmiDataAmount.setCreateTime(createTime);
cmiDataAmount.setCurrentMonth(currentMonth);
cmiDataAmount.setId(UUID.randomUUID().toString());
}).collect(Collectors.toList());
5、将String类型的字符串(⽐如⽤“,”分割)转换为集合
List<String> msisdnsList = Arrays.asList(msisdns.split(",")).stream().
map(s -> String.format(s.trim())).collect(Collectors.toList());
1
2
3
6、遍历集合,获取类型为A的元素,并放⼊新集合
List<CmiDataAmount> list = cmiDataAmountList.stream().
ilter(item -> item.getType().equals("A")).
collect(Collectors.toList());
7、取list集合中的两个元素,转换为⼀个map
Map<Integer, String> collect = list.stream().
collect(Collectors.toMap(Student::getAge, Student::getName));
8、如何将⼀个元素(对象、属性等)优雅的转换为⼀个集合
List<K> authcChannels = Stream.of(K).collect(Collectors.toList());
--------------------------------------------------------
作者:资料降龙芳蔼大全
链接:https://wenku.baidu.com/view/05670a69757f5acfa1c7aa00b52acfc789eb9fc9.html
来源:百度文库
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。