使用 fastjson-1.2.4.jar,一個解析json字符串jar包,由阿里巴巴工程師開發。java
User.javajson
package com.godcin.test.bean; import java.util.List; public class User { private String name; private int age; private List<String> habits; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public List<String> getHabits() { return habits; } public void setHabits(List<String> habits) { this.habits = habits; } }
JSONArrayTest.java
package com.godcin.test.json; import java.util.ArrayList; import java.util.List; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.godcin.test.bean.User; public class JSONArrayTest { public static void main(String[] args) { User user1 = new User(); user1.setName("張三"); user1.setAge(18); List<String> habits1 = new ArrayList<String>(); habits1.add("抽菸"); habits1.add("喝酒"); user1.setHabits(habits1); User user2 = new User(); user2.setName("李四"); user2.setAge(18); List<String> habits2 = new ArrayList<String>(); habits2.add("打牌"); habits2.add("唱歌"); user2.setHabits(habits2); List<User> users=new ArrayList<User>(); users.add(user1); users.add(user2); JSONArray jsonArray=new JSONArray();//一、建立JSONArray jsonArray.addAll(users);//二、把JSONArray添加List,List<User>轉JSONArray,同時也能夠是Map,Set等集合 System.out.println(jsonArray.get(0));//輸出結果|com.godcin.test.bean.User@14ae5a5 System.out.println(jsonArray.get(1));//輸出結果|com.godcin.test.bean.User@7f31245a System.out.println("姓名:"+((User)jsonArray.get(0)).getName());//輸出結果|姓名:張三 System.out.println("愛好:"+((User)jsonArray.get(1)).getHabits());//輸出結果|愛好:[打牌, 唱歌] String jsonStr=jsonArray.toJSONString();//三、JSONArray轉化json字符串 System.out.println(jsonStr);//輸出結果|[{"age":18,"habits":["抽菸","喝酒"],"name":"張三"},{"age":18,"habits":["抽菸","喝酒"],"name":"張三"}] users=JSON.parseArray(jsonStr, User.class);//json字符串轉List<User> System.out.println(users);//輸出結果 |[com.godcin.test.bean.User@16f65612, com.godcin.test.bean.User@311d617d] } }