fastJson的四种常用方法
JSON 转 POJO public static <T> T getObject(String pojo, Class<T> tclass) { return JSONObject.parseObject(pojo, tclass); } POJO 转 JSON public static <T> String getJson(T tResponse){ return JSONObject.toJSONString(tResponse); } List<T> 转 json public static <T> String listToJson(List<T> ts) { return JSON.toJSONString(ts); } json 转 List<T> public static <T> List<T> jsonToList(String jsonString, Class<T> clazz) { return JSONArray.parseArray(jsonString, clazz); }
自测json字符串的小代码
String s1 ="{'a':1,'b':2}"; String s2 ="{'a':3,'b':4}"; List s = new ArrayList<String>(); s.add(s1); s.add(s2); JSONArray list = new JSONArray(s); System.out.println(list.toJSONString()); String res = list.toJSONString(); List<String> sts = JSONArray.parseArray(res,String.class); for (String string : sts) { System.out.println(string); }
关于对json数组进行自定义排序
实体类:TestAA
public class TestAA { private String a; private String b; public TestAA() { super(); } public String getA() { return a; } public void setA(String a) { this.a = a; } public String getB() { return b; } public void setB(String b) { this.b = b; } public TestAA(String a, String b) { super(); this.a = a; this.b = b; } @Override public String toString() { return "TestAA [a=" + a + ", b=" + b + "]"; } }
进行自定义排序的代码
TestAA a1 = new TestAA("1", "2"); TestAA a2 = new TestAA("3", "2"); List s = new ArrayList<TestAA>(); s.add(a1); s.add(a2); JSONArray list = new JSONArray(s); System.out.println(list.toJSONString()); String res = list.toJSONString(); List<TestAA> sts = JSONArray.parseArray(res,TestAA.class);
//从大到小进行排序 Collections.sort(sts, new Comparator<TestAA>() { public int compare(TestAA o1,TestAA o2) { return Integer.parseInt(o2.getA())-Integer.parseInt(o1.getA()); }; }); for (TestAA a : sts) { System.out.println(a.toString()); }
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/11166.html