list 转jsonArray 指定类型
时间: 2024-08-28 16:01:05 浏览: 44
在Java中,如果你有一个List并且想将其转换为JSONArray,通常你会使用Jackson库来完成这个任务,特别是当你需要控制元素的序列化类型时。下面是一个例子,假设你有一个List专门包含User对象,而User对象有一个String类型的属性name,你可以这样做:
```java
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.type.TypeFactory;
import java.util.List;
class User {
String name;
// getters and setters...
}
public JSONArray userListToJsonArray(List<User> userList) throws JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
TypeReference<List<User>> typeRef = new TypeReference<List<User>>() {};
return mapper.writerFor(typeRef).writeValueAsArray(userList);
}
// 使用示例:
List<User> users = ...;
JSONArray jsonArray = userListToJsonArray(users);
System.out.println(jsonArray.toString()); // 输出:[{"name": "value1"}, {"name": "value2"}] (假设users有2个User对象)
阅读全文