但是我们可以借助Stream API中的map方法来实现这个功能。思路是将List转换成一个由索引和元素组成的新的对象,然后再通过map方法提取索引。 下面是一个示例代码,演示了如何使用Stream的map方法获取List中每个元素的索引: importjava.util.ArrayList;importjava.util.List;importjava.util.stream.IntStream;publicclassListI...
"banana","orange");Stream<String>stream=fruits.stream();IntStreamindexStream=IntStream.range(0,fruits.size());List<String>result=indexStream.mapToObj(
如果我们要求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=...
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); 输...
userList.stream().collect(Collectors.toMap(User::getId, User::getName));当然,如果希望得到 Map ...
Map<Integer,String> userMap1 =userList.stream().collect(Collectors.toMap(User::getId,User::getName));2、指定key-value,value是对象本身,User->User 是一个返回本身的lambda表达式Map<Integer,User> userMap2 = userList.stream().collect(Collectors.toMap(User::getId,User->User));3、指定key-value,...
2._list packagecom.entify;importjava.util.ArrayList;importjava.util.Iterator;publicclassDemo{publicstaticvoidmain(String[]args){// 对象遍历方式ArrayList<String>list=newArrayList<>();list.add("a");list.add("b");list.add("c");//第一种方式for(inti=0;i<list.size();i++){System.out.print...
使用Java Stream将List转换为Map可以使用Collectors.toMap()方法。toMap()方法接受两个参数,第一个参数是用于提取Map的键的函数,第二个参数是用于提取Map的值的函数。下面是一个示例: importjava.util.*; importjava.util.stream.Collectors; publicclassMain{ ...
stream().collect(Collectors.toMap(Person::getId, Person::getName)); // 后面的值代替之前的值 // Map<String, String> map = list.stream().collect(Collectors.toMap(Person::getId, Person::getName,(value1 , value2)-> value2 )); // 重复时将前面的value 和后面的value拼接起来 // Map<...
Map<Integer,String>map=list.stream().collect(Collectors.toMap(User::getId,User::getName));...