jdk8 优化以下代码: List<Map<String,Object>> resultList = new ArrayList<>(); DataSource dataSource = iDataSourceClient.queryRawDataSource(); Map<String,Object> raw = new HashMap<>(); raw.put("id", dataSource.getId()); raw.put("note",dataSource.getNote()); raw.put("name",dataSource.getName()); raw.put("relate_id",dataSource.getRelateId()); raw.put("type", dataSource.getType().getDescp().toUpperCase(Locale.ROOT)); resultList.add(raw); 其中map属于java.util包
时间: 2024-02-26 16:56:53 浏览: 79
在Java 8中将List转换为Map对象方法
可以将代码优化为:
```
List<Map<String, Object>> resultList = new ArrayList<>();
DataSource dataSource = iDataSourceClient.queryRawDataSource();
resultList.add(new HashMap<String, Object>() {{
put("id", dataSource.getId());
put("note", dataSource.getNote());
put("name", dataSource.getName());
put("relate_id", dataSource.getRelateId());
put("type", dataSource.getType().getDescp().toUpperCase(Locale.ROOT));
}});
```
使用双括号初始化方式可以更简单地创建匿名类并实现对象的初始化。这种方式在 JDK8 中仍然适用。
阅读全文