1.首先就是速度上.Fast Json的解析速度是非常高效的,速度快的原因就是使用了优化算法,因此他的速度要远远好于其他的api接口.
2.没有依赖性,在JDK 5.0开始被正式的启用,支持Android,支持的数据类型也是非常的多.
多的废话我也就不多说了,贴上代码(需要导入一个FastJson jar包)。
一、将json对象转换为java对象 private void json() { //获取或者创建数组 String json="{n" + " "id": 2,n" + " "imgPath": "http://img00.hc360.com/cloth/201206/201206191116426249.jpg",n" + " "name": "hldyx",n" + " "price": 12.3n" + "}"; //解析json shopInfo shopInfo = JSON.parseObject(json, shopInfo.class); //显示数据 mtest01.setText(json); mtest02.setText(shopInfo.toString()); } 还需创建一个实体类 shopInfo .java package com.example.fastjson;/** * Created by Myzg2 on 2017/7/30. */public class shopInfo { /** * id : 2 * imgPath : http://img00.hc360.com/cloth/201206/201206191116426249.jpg * name : hldyx * price : 12.3 */ private int id; private String imgPath; private String name; private double price; public shopInfo(int id, String imgPath, String name, double price) { this.id = id; this.imgPath = imgPath; this.name = name; this.price = price; } public shopInfo() { } @Override public String toString() { return "shopInfo{" + "id=" + id + ", imgPath='" + imgPath + ''' + ", name='" + name + ''' + ", price=" + price + '}'; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getImgPath() { return imgPath; } public void setImgPath(String imgPath) { this.imgPath = imgPath; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; }} 二、将json数组转换为java对象的集合 private void jsonList() { //获取或者创建数组 String json="[n" + " {n" + " "id": 1,n" + " "imgPath": "http://img00.hc360.com/cloth/201206/201206191116426249.jpg",n" + " "name": "hldyx",n" + " "price": 12.3n" + " },n" + " {n" + " "id": 2,n" + " "imgPath": "http://img00.hc360.com/cloth/201206/201206191116426249.jpg",n" + " "name": "mgdyj",n" + " "price": 63.2n" + " }n" + "]"; //解析json List<shopInfo> shopInfos = JSON.parseArray(json, shopInfo.class); //显示数据 mtest01.setText(json); mtest02.setText(shopInfos.toString()); } 三、将java对象转化为Json对象 private void javaJson() { //获取或者创建java对象 shopInfo shopInfo = new shopInfo(1, "caomei", "草莓", 36.5); //生成json数据 String s = JSON.toJSONString(shopInfo); //显示 mtest01.setText(shopInfo.toString()); mtest02.setText(s); } 四、将java集合转化为Json数据 private void javaJsonList() { //获取或者创建java对象 List<shopInfo> list =new ArrayList<>(); shopInfo shopInfo = new shopInfo(1, "caomei", "草莓", 36.5); shopInfo shopInfos = new shopInfo(2, "lanmei", "蓝莓", 66.5); list.add(shopInfo); list.add(shopInfos); //生成json数据 String s = JSON.toJSONString(list); //显示 mtest01.setText(shopInfo.toString()); mtest02.setText(s); }