java中Object类型转换成List<Map>类型除了强转还能怎么办
时间: 2023-03-24 22:02:53 浏览: 165
可以使用Java的反射机制,通过获取Object对象的属性和方法,将其转换成List<Map>类型。具体实现可以参考Java中的BeanUtils类或者Apache Commons BeanUtils类。
相关问题
举一个java中Object类型转换成List<Map>类型的非强转的例子
可以使用Java 8中的Stream API来实现Object类型转换成List<Map>类型的非强转。具体实现可以参考以下代码:
Object obj = new Object();
List<Map<String, Object>> list = Stream.of(obj)
.map(o -> {
Map<String, Object> map = new HashMap<>();
map.put("key", o);
return map;
})
.collect(Collectors.toList());
这段代码将一个Object类型的对象转换成了一个包含一个Map的List,Map中的key为"key",value为原始的Object对象。
java中json字符串强转成list<map>
可以使用Jackson库中的ObjectMapper类将JSON字符串转换为List<Map>对象。具体代码如下:
```
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
String jsonStr = "[{\"id\":1,\"name\":\"Tom\"},{\"id\":2,\"name\":\"Jerry\"}]";
ObjectMapper objectMapper = new ObjectMapper();
List<Map<String, Object>> list = objectMapper.readValue(jsonStr, new TypeReference<List<Map<String, Object>>>() {});
```
其中,jsonStr是待转换的JSON字符串,List<Map>是转换后的结果。
阅读全文