fastjson 常见 使用方式 特点:快速,高效
1 String -> List
形式1:
String[] strArray = {"aa","bb","cc"};
方法1:此方法底层仍然是数组,不可以使用List的相关方法,否则报错
List<String> list = Arrays.asList(strArray);
方法2:此方法可以继续使用List的相关操作
List<String> list = new ArrayList<>();
Collections.addAll(list,strArray);
形式2:
String strArray = "\"aa\",\"bb\",\"cc\"";
//String strArray = aa,bb,cc
将以上转为数组,再转为List即可
if (strArray != null){
String[] split = strArray.split(",");
}
2 List -> String
形式1:
List<String> list = new ArrayList<>();
list.add("aa");
list.add("bb");
list.add("cc");
方法1:
String str = list.toString(); //结果为:[aa, bb, cc]
方法2:去除List元素之间的空格
String str = list.toString().replaceAll(" ",""); //结果为:[aa,bb,cc]
3 String -> Map
形式1:
String jsonObjectStr = "{\"name\":\"wangyifei\"}";
JSONObject jsonObject = JSONObject.parseObject(jsonObjectStr);
4 Map -> String
Map<String,Object> map = new HashMap<>();
map.put("name","wangyifei");
String mapStr = JSON.toJSONString(map);
5 String -> JSONObject
String jsonObjectStr = "{\"name\":\"wangyifei\"}";
JSONObject jsonObject = JSONObject.parseObject(jsonObjectStr);
6 JSONObject -> String
JSONObject jsonObject = new JSONObject();
jsonObject.put("name","wangyifei");
String jsonObjectStr = JSON.toJSONString(jsonObject);
7 String -> JSONArray
String jsonArrayStr = "[{\"name\":\"wangyifei\"},{\"age\":24}]";
JSONArray jsonArray = JSONArray.parseArray(jsonArrayStr);
8 Map -> JSONObject
Map<String,Object> map = new HashMap<>();
map.put("name","wangyifei");
JSONObject jsonObject = new JSONObject(map);
9 JSONObject -> Map
JSONObject jsonObject = new JSONObject();
jsonObject.put("name","wangyifei");
Map<String,Object> map = (Map)jsonObject;
10 List -> JSONArray
List<String> list = new ArrayList<>();
list.add("name");
list.add("wangyifei");
JSONArray jsonArray = JSONArray.parseArray(JSON.toJSONString(list));
11 JSONArray -> List
JSONArray array = new JSONArray();
List<User> list = JSONObject.parseArray(array.toJSONString(), User.class);
12 jsonString -> JavaBean
String jsonString = "{\"id\":\"110\",\"name\":\"wangyifei\"}";
User user = JSON.parseObject(jsonString,User.class);
13 jsonString -> JSONArray -> List《JavaBean》
String jsonStr = "{\"java\":[{id:\"111\",name:\"wangyitong\"},{id:\"222\",name:\"wangyifei\"},{id:\"333\",name:\"wangyiming\"}]}";
JSONObject jsonObject = JSON.parseObject(jsonStr);
JSONArray jsonArray = jsonObject.getJSONArray("java");
List<User> list = JSON.parseArray(jsonArray.toString(),User.class);
这里User是一个类:
public class User {
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
14 Object -> Map
Object obj = new Object();
Map map = (Map)obj;
15 Object -> JSONObject
Object obj = new Object();
JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(obj));
注意,当使用fastjson转换时,如果参数为null,不会报错,对应的结果也为null
16 List -> Array
List<String> list = new ArrayList<>();
String[] array = list.toArray(new String[list.size()]);
17 Array -> List
推荐:
String[] array = new String[]{"wang","yifei"};
List<String> list = new ArrayList<String>(Arrays.asList(array));
或
List<String> list = new ArrayList<String>(array.length);
Collections.addAll(list, array);