- 实体例子
- List 转成Map
- List 转成Map
-
List 转成Map
- List 转成Map
- List
- List
- List
- List
- 总结
实体例子
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
public class Person { private String name; private String address; public Person(String name, String address) { this .name = name; this .address = address; } public String getName() { return name; } public void setName(String name) { this .name = name; } public String getAddress() { return address; } public void setAddress(String address) { this .address = address; } } |
List 转成Map<String,Object>
1 2 3 4 5 6 7 8 9 10 11 |
List<Person> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Person person4 = new Person( "熊大" , "森林第四个小屋" ); (person1); (person2); (person3); (person4); Map<String,Person> map = ().collect((Person::getName,each->each,(value1, value2) -> value1)); ((map)); |
控制台打印日志:
{“光头强”:{“address”:“森林第三个小屋”,“name”:“光头强”},“熊大”:{“address”:“森林第一个小屋”,“name”:“熊大”},“熊二”:{“address”:“森林第二个小屋”,“name”:“熊二”}}
List 转成Map<String,String>
1 2 3 4 5 6 7 8 9 10 11 |
List<Person> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Person person4 = new Person( "熊大" , "森林第四个小屋" ); (person1); (person2); (person3); (person4); Map<String,String> map = ().collect((Person::getName,Person::getAddress,(value1, value2) -> value1)); ((map)); |
控制台打印日志:
{“光头强”:“森林第三个小屋”,“熊大”:“森林第一个小屋”,“熊二”:“森林第二个小屋”}
List 转成Map<String,List>
方法一:
1 2 3 4 5 6 7 8 9 10 11 |
List<Person> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Person person4 = new Person( "熊大" , "森林第四个小屋" ); (person1); (person2); (person3); (person4); Map<String, List<Person>> map = ().collect((Person::getName)); ((map)); |
控制台打印日志:
{“光头强”:[{“address”:“森林第三个小屋”,“name”:“光头强”}],“熊大”:[{“address”:“森林第一个小屋”,“name”:“熊大”},{“address”:“森林第四个小屋”,“name”:“熊大”}],“熊二”:[{“address”:“森林第二个小屋”,“name”:“熊二”}]}
方法二:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
List<Person> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Person person4 = new Person( "熊大" , "森林第四个小屋" ); (person1); (person2); (person3); (person4); Map<String,List<Person>> map = ().collect((Person::getName,each->(each),(value1, value2) -> { List<Person> union = new ArrayList<>(value1); (value2); return union; })); ((map)); |
控制台打印日志:
{“光头强”:[{“address”:“森林第三个小屋”,“name”:“光头强”}],“熊大”:[{“address”:“森林第一个小屋”,“name”:“熊大”},{“address”:“森林第四个小屋”,“name”:“熊大”}],“熊二”:[{“address”:“森林第二个小屋”,“name”:“熊二”}]}
List 转成Map<String,List>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
List<Person> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Person person4 = new Person( "熊大" , "森林第四个小屋" ); (person1); (person2); (person3); (person4); Map<String,List<String>> map = ().collect((Person::getName,each->(()),(value1, value2) -> { List<String> union = new ArrayList<>(value1); (value2); return union; })); ((map)); |
控制台打印日志:
{“光头强”:[“森林第三个小屋”],“熊大”:[“森林第一个小屋”,“森林第四个小屋”],“熊二”:[“森林第二个小屋”]}
List<Map<String,Object>> 转成Map<String,Map<String,Object>>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
List<Map<String,Object>> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Map<String,Object> map1 = new HashMap<>(); ( "id" , "1" ); ( "person" ,person1); Map<String,Object> map2 = new HashMap<>(); ( "id" , "2" ); ( "person" ,person2); Map<String,Object> map3 = new HashMap<>(); ( "id" , "3" ); ( "person" ,person3); (map1); (map2); (map3); Map<String,Map<String,Object>> map = ().collect((each->(( "id" ), "" ),each->each,(key1,key2)->key1)); ((map)); |
控制台打印日志:
{“1”:{“person”:{“address”:“森林第一个小屋”,“name”:“熊大”},“id”:“1”},“2”:{“person”:{“address”:“森林第二个小屋”,“name”:“熊二”},“id”:“2”},“3”:{“person”:{“address”:“森林第三个小屋”,“name”:“光头强”},“id”:“3”}}
List<Map<String,Object>> 转成Map<String,Object>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
List<Map<String,Object>> list = new ArrayList<>(); Person person1 = new Person( "熊大" , "森林第一个小屋" ); Person person2 = new Person( "熊二" , "森林第二个小屋" ); Person person3 = new Person( "光头强" , "森林第三个小屋" ); Map<String,Object> map1 = new HashMap<>(); ( "id" , "1" ); ( "person" ,person1); Map<String,Object> map2 = new HashMap<>(); ( "id" , "2" ); ( "person" ,person2); Map<String,Object> map3 = new HashMap<>(); ( "id" , "3" ); ( "person" ,person3); (map1); (map2); (map3); Map<String,Object> map = ().collect((each->(( "id" ), "" ),each->( "person" ),(key1,key2)->key1)); ((map)); |
控制台打印日志:
{“1”:{“address”:“森林第一个小屋”,“name”:“熊大”},“2”:{“address”:“森林第二个小屋”,“name”:“熊二”},“3”:{“address”:“森林第三个小屋”,“name”:“光头强”}}
List<Map<String,String>> 转成Map<String,Map<String,String>>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
List<Map<String,String>> list = new ArrayList<>(); Map<String,String> map1 = new HashMap<>(); ( "id" , "1" ); ( "name" , "熊大" ); ( "address" , "森林第一个小屋" ); Map<String,String> map2 = new HashMap<>(); ( "id" , "2" ); ( "name" , "熊二" ); ( "address" , "森林第二个小屋" ); Map<String,String> map3 = new HashMap<>(); ( "id" , "3" ); ( "name" , "光头强" ); ( "address" , "森林第三个小屋" ); (map1); (map2); (map3); Map<String,Map<String,String>> map = ().collect((each->( "id" ),each->each,(key1,key2)->key1)); ((map)); |
控制台打印日志:
{“1”:{“address”:“森林第一个小屋”,“name”:“熊大”,“id”:“1”},“2”:{“address”:“森林第二个小屋”,“name”:“熊二”,“id”:“2”},“3”:{“address”:“森林第三个小屋”,“name”:“光头强”,“id”:“3”}}
List<Map<String,String>> 转成Map<String,String>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
List<Map<String,String>> list = new ArrayList<>(); Map<String,String> map1 = new HashMap<>(); ( "id" , "1" ); ( "name" , "熊大" ); ( "address" , "森林第一个小屋" ); Map<String,String> map2 = new HashMap<>(); ( "id" , "2" ); ( "name" , "熊二" ); ( "address" , "森林第二个小屋" ); Map<String,String> map3 = new HashMap<>(); ( "id" , "3" ); ( "name" , "光头强" ); ( "address" , "森林第三个小屋" ); (map1); (map2); (map3); Map<String,String> map = ().collect((each->( "id" ),each->( "name" ),(key1,key2)->key1)); ((map)); |
控制台打印日志:
{“1”:“熊大”,“2”:“熊二”,“3”:“光头强”}