使用java8语法分组集合以及遍历
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import lombok.Data;
/**
*
* @类名称 TestJava8.java
* @类描述 <pre>使用java8语法分组集合以及遍历</pre>
* @作者 yw xingsfdz@163.com
* @创建时间 2021年7月30日 上午10:37:20
* @版本 5.0.0
*
* @修改记录
* <pre>
* 版本 修改人 修改日期 修改内容描述
* ----------------------------------------------
* 5.0.0 yw 2021年7月30日
* ----------------------------------------------
* </pre>
*/
public class TestJava8 {
public static void main(String[] args) {
List<User> list = getList();
Map<String, List<User>> map = list.stream().collect(Collectors.groupingBy(User::getCode));
map.keySet().forEach(
key -> {
System.out.println("key:" + key);
System.out.println("value:" + map.get(key));
System.out.println("----------------------------");
}
);
}
private static List<User> getList() {
User u1 = new User("stu", "张三");
User u2 = new User("stu", "李四");
User u3 = new User("tea", "王老师");
User u4 = new User("tea", "杨老师");
List<User> list = new ArrayList<>();
list.add(u1);
list.add(u2);
list.add(u3);
list.add(u4);
return list;
}
@Data
static class User{
User(){
super();
}
User(String code, String name){
this.code = code;
this.name = name;
}
private String code;
private String name;
}
}