1,基于Gson的简单工具类
第一步:添加依赖
implementation 'com.google.code.gson:gson:2.8.6'
第二步:添加如下工具类
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.util.List;
/**
* Time: 2020/6/16
* Author: Why
* Description: 基于Gson的Json与Object转换
*/
public class GsonSupport {
/**
* 对象转为Json字符串
*
* @param t :待转换对象
* @param <T>
* @return
*/
public static <T> String objectToJson(T t) {
Gson gson = new Gson();
return gson.toJson(t);
}
/**
* Json字符串转为对象
*
* @param json
* @param <T>
* @return
*/
public static <T> T jsonToObject(String json) {
Gson gson = new Gson();
return gson.fromJson(json, new TypeToken<T>() {
}.getType());
}
/**
* Json数组转为List
*
* @param jsonArray
* @param <T>
* @return
*/
public static <T> List<T> jsonToList(String jsonArray) {
Gson gson = new Gson();
List<T> list = gson.fromJson(jsonArray, new TypeToken<T>() {
}.getType());
return list;
}
/**
* List转为JsonArray字符串
*
* @param list
* @param <T>
* @return
*/
public static <T> String ListToJsonArray(List<T> list) {
Gson gson = new Gson();
String jsonArray = gson.toJson(list, new TypeToken<List<T>>() {
}.getType());
return jsonArray;
}
}
2,基于Gson和FastJson的简单工具类
第一步:添加依赖
implementation 'com.google.code.gson:gson:2.8.6' implementation 'com.alibaba:fastjson:1.1.54.android'
第二步:导入工具类
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.util.List;
/**
* Time: 2020/6/16
* Author: Why
* Description: 基于Gson和FastJson实现json和Object之间的转换
* (1) Object----》Json Gson
* (2)Json----》Object FastJson
*/
public class GsonSupportPlus {
/**
* 对象转为Json字符串
*
* @param t :待转换对象
* @param <T>
* @return
*/
public static <T> String objectToJson(T t) {
Gson gson = new Gson();
return gson.toJson(t);
}
/**
* Json字符串转为对象
*
* @param json
* @param <T>
* @return
*/
public static <T> T jsonToObject(String json) {
return JSON.parseObject(json, new TypeReference<T>(){});
}
/**
* Json数组转为List
*
* @param jsonArray
* @param c 元素类型Class文件
* @param <T>
* @return
*/
public static <T> List<T> jsonToList(String jsonArray,Class c){
return JSON.parseArray(jsonArray,c);
}
/**
* List转为JsonArray字符串
*
* @param list
* @param <T>
* @return
*/
public static <T> String ListToJsonArray(List<T> list) {
Gson gson = new Gson();
String jsonArray = gson.toJson(list, new TypeToken<List<T>>() {
}.getType());
return jsonArray;
}
}
以上提供日常开发最常用实现,主要供自己使用方便。关于依赖版本,可自己修改。 最后,当然还有Jar包奉上哈哈
链接:https://pan.baidu.com/s/12jZB0otnUOVNsYXb-6dxCQ
提取码:rups
如果对您有帮助,欢迎扫码关注: