stream 里面的 Collectors.toMap 用法
第一步:
package test; public class Person { private Integer id; private String name; public Person(Integer id, String name) { this.id = id; this.name = name; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
第二步:
package test; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; public class Test { public static void main(String[] args) { List<Person> list = new ArrayList(); list.add(new Person(1, "haha")); list.add(new Person(2, "rere")); list.add(new Person(3, "fefe")); Map<Integer, Person> mapp = list.stream().collect(Collectors.toMap(Person::getId, Function.identity())); System.out.println(mapp); System.out.println(mapp.get(1).getName()); Map<Integer, String> map = list.stream().collect(Collectors.toMap(Person::getId, Person::getName)); System.out.println(map); } }
得到的结果:
{1=test.Person@4b9385, 2=test.Person@1311334, 3=test.Person@2a0b20}
haha
{1=haha, 2=rere, 3=fefe}
下一篇:
Django实现简单的音乐播放器 1