list =[ {"id": 2, "name": "san"}, {"id": 3, "name": "si"}]
我想转为:
map = "2": {"id": 2, "name": "san"}, "3":{"id": 3, "name": "si"}
list =[ {"id": 2, "name": "san"}, {"id": 3, "name": "si"}]
我想转为:
map = "2": {"id": 2, "name": "san"}, "3":{"id": 3, "name": "si"}
和楼上不同的一个非stream的版本:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
List<Map<String, Object>> list = getList();
Map<String, Map<String, Object>> map = new HashMap<>();
for (Map<String, Object> element : list) {
String id = element.get("id").toString();
map.put(id, element);
}
System.out.println(map);
}
private static List<Map<String, Object>> getList() {
// 假设这是你的列表
List<Map<String, Object>> list = new ArrayList<>();
Map<String, Object> element1 = new HashMap<>();
element1.put("id", 2);
element1.put("name", "san");
list.add(element1);
Map<String, Object> element2 = new HashMap<>();
element2.put("id", 3);
element2.put("name", "si");
list.add(element2);
return list;
}
}
4 回答1.5k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
1 回答2.6k 阅读✓ 已解决
3 回答1.9k 阅读
2 回答773 阅读✓ 已解决
2 回答1.7k 阅读
2 回答1.3k 阅读