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
如果對您有幫助,歡迎掃碼關注: