转载自:http://www.kwstu.com/ArticleView/kwstu_201382884850921

使用的是json-lib.jar包

将json格式的字符数组转为List对象

Java代码   json数组和List转换_java
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package  hb; 
   
import  java.util.Date; 
   
public  class  Person { 
       
     String id; 
     int  age; 
     String name; 
     Date birthday; 
     public  String getId() { 
         return  id; 
    
     public  void  setId(String id) { 
         this .id = id; 
    
     public  int  getAge() { 
         return  age; 
    
     public  void  setAge( int  age) { 
         this .age = age; 
    
     public  String getName() { 
         return  name; 
    
     public  void  setName(String name) { 
         this .name = name; 
    
     public  Date getBirthday() { 
         return  birthday; 
    
     public  void  setBirthday(Date birthday) { 
         this .birthday = birthday; 
    
       
}
Java代码   json数组和List转换_java
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package  hb; 
   
import  java.util.Iterator; 
import  java.util.List; 
   
import  org.junit.Test; 
   
import  net.sf.json.JSONArray; 
import  net.sf.json.JsonConfig; 
   
public  class  JsonToList { 
   
     public  static  void  main(String[] args) { 
         String json= "[{'name':'huangbiao','age':15},{'name':'liumei','age':14}]"
         JSONArray jsonarray = JSONArray.fromObject(json); 
         System.out.println(jsonarray); 
         List list = (List)JSONArray.toCollection(jsonarray, Person. class ); 
         Iterator it = list.iterator(); 
         while (it.hasNext()){ 
             Person p = (Person)it.next(); 
             System.out.println(p.getAge()); 
        
    
       
     @Test 
     public  void  jsonToList1(){ 
         String json= "[{'name':'huangbiao','age':15},{'name':'liumei','age':14}]"
         JSONArray jsonarray = JSONArray.fromObject(json); 
         System.out.println(jsonarray); 
         List list = (List)JSONArray.toList(jsonarray, Person. class ); 
         Iterator it = list.iterator(); 
         while (it.hasNext()){ 
             Person p = (Person)it.next(); 
             System.out.println(p.getAge()); 
        
           
    
       
     @Test 
     public  void  jsonToList2(){ 
         String json= "[{'name':'huangbiao','age':15},{'name':'liumei','age':14}]"
         JSONArray jsonarray = JSONArray.fromObject(json); 
         System.out.println(jsonarray); 
         System.out.println( "------------" ); 
         List list = (List)JSONArray.toList(jsonarray, new  Person(), new  JsonConfig()); 
         Iterator it = list.iterator(); 
         while (it.hasNext()){ 
             Person p = (Person)it.next(); 
             System.out.println(p.getAge()); 
        
           
    
   
}

将list对象转为JSON字符串数组

Java代码   json数组和List转换_java
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package  hb; 
   
import  java.util.LinkedList; 
import  java.util.List; 
   
import  net.sf.json.JSONArray; 
   
public  class  ListToJson { 
   
     public  static  void  main(String[] args) { 
         List list = new  LinkedList(); 
         for ( int  i= 0 ;i< 3 ;i++){ 
             Person p = new  Person(); 
             p.setAge(i); 
             p.setName( "name" +i); 
             list.add(p); 
        
         JSONArray jsonarray = JSONArray.fromObject(list); 
         System.out.println(jsonarray); 
    
   
}

 打印结果

Java代码   json数组和List转换_java
?
1
[{ "age" : 0 , "birthday" : null , "id" : "" , "name" : "name0" },{ "age" : 1 , "birthday" : null , "id" : "" , "name" : "name1" },{ "age" : 2 , "birthday" : null , "id" : "" , "name" : "name2" }]