3. 清空某个属性的值并返回结果: list.stream().map(it ->{ it.setName("");returnit; }).collect(Collectors.toList()); System.out.println(list.toString()); 返回结果:[name=, age=30, name=, age=30] 4. 获取其中某个属性的集合: List collection =list.stream().map(Student::getAge).co...
Map<String,List<String>>map=list.stream().collect(Collectors.toMap(Person::getId,p->{List<String>getNameList=newArrayList<>();getNameList.add(p.getName());returngetNameList;},(List<String>value1,List<String>value2)->{value1.addAll(value2);returnvalue1;}));System.out.println(map); 输...
如果我们要求map的顺序要按照list的执行的话,我们就要转map的时候指定map的具体实现。 Map<String, User> maps3 = list.stream().collect (Collectors.toMap(User::getName,Function.identity(),(k1, k2) -> k1,LinkedHashMap::new)); 输出结果 {pangHu=User{name='pangHu', age=18}, piKaQiu=User{name=...
list.add(newStudent("1003","小D"));//将list转map (map的键去重)Map<String, Student> map = list.stream().collect(Collectors.toMap( Student::getNo, stu -> stu, (key1 , key2) -> key2 )); 或者//将list转map (map的键去重)Map<String, Student> map = list.stream().collect(Collect...
List<Integer> squaresList = numbers.stream().map( i -> i*i).distinct().collect(Collectors.toList()); 1. 2. 3. filter():filter 方法用于通过设置的条件过滤出元素。以下代码片段使用 filter 方法过滤出空字符串: List<String>strings = Arrays.asList("abc", "", "bc", "efg", "abcd",""...
使用Java Stream将List转换为Map可以使用Collectors.toMap()方法。toMap()方法接受两个参数,第一个参数是用于提取Map的键的函数,第二个参数是用于提取Map的值的函数。下面是一个示例: importjava.util.*; importjava.util.stream.Collectors; publicclassMain{ ...
最后,我们使用forEach方法迭代输出转换后的Map。运行代码,我们可以得到以下输出结果: 1: Apple 2: Banana 3: Cherry 1. 2. 3. 从输出结果可以看出,实体List成功转换为了Map,并且根据实体的id属性进行了索引。 总结 在本文中,我们介绍了Java 8中的Stream API,并演示了如何使用Stream API将实体List转换为Map。通...
使用Java Stream将List转换为Map可以使用Collectors.toMap()方法。toMap()方法接受两个参数,第一个参数是用于提取Map的键的函数,第二个参数是用于提取Map的值的函数。下面是一个示例: import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { Li...
map()是一个中间操作,这意味着它返回Stream对象。 先来一个简单 演示Demo: List<String> funs = Arrays.asList("F", "U", "N"); funs.stream().map(x->x+"001").forEach(x->output(x)); 控制台输出: INFO-> 当前用户:fv,IP:10.60.192.21,工作目录:/Users/fv/Documents/workspace/fun/,系统编...
list.add(s5);returnlist; } } 找出所有的学生姓名 publicstaticvoidmain(String[] args) {DataFactory.initData().stream().map(student - > student.getName()).forEach(System.out::println); } 这里使用了 map() 方法,入参是 Student,出参是以 String 为泛型的流,最后使用 forEach 进行了打印,看下...