有个这样的List<PerformanceRanking> list PerformanceRanking是实体类,从数据库查询出来的,相当于一个map
把list放进map中 Map<String,List<PerformanceRanking>> 我想把这个map按照实体类中的三个字段作为String。该如何实现呢
有个这样的List<PerformanceRanking> list PerformanceRanking是实体类,从数据库查询出来的,相当于一个map
把list放进map中 Map<String,List<PerformanceRanking>> 我想把这个map按照实体类中的三个字段作为String。该如何实现呢
class A {
private String id;
private String address;
private int age;
private boolean sex;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public boolean isSex() {
return sex;
}
public void setSex(boolean sex) {
this.sex = sex;
}
public A(String id, String address, int age, boolean sex) {
this.id = id;
this.address = address;
this.age = age;
this.sex = sex;
}
}
@Test
public void testA() {
List<A> aList = new ArrayList<>();
A a1 = new A("1", "地址1", 10, false);
aList.add(a1);
A a2 = new A("1", "地址1", 10, true);
aList.add(a2);
A a3 = new A("2", "地址2", 12, false);
aList.add(a3);
A a4 = new A("2", "地址2", 12, true);
aList.add(a4);
Map<String, List<A>> map = aList.stream().collect(Collectors.groupingBy(a -> a.id+"_"+a.address+"_"+a.age, Collectors.toList()));
System.out.println(map);
}