JSON 和 List之互相转换

来源:互联网 发布:松下机器人怎样编程 编辑:程序博客网 时间:2024/05/16 05:09

json数组和List集合转换总结

复制代码
//方法一,将json解析后赋给单独的元素String jstr="{'json':'jsonvalue','bool':true,'int':1,'double':'20.5'}";JSONObject json=JSONObject.fromObject(jstr);boolean bool=json.getBoolean("bool");int i=json.getInt("int");double d=json.getDouble("double");String value=json.getString("json");System.out.println("bool="+String.valueOf(bool)+"\tjson="+value+"\tint="+i+"\tdouble="+d);
复制代码
复制代码
//方法二,json对象和bean对象之间相互转换//假如你是有一个bean对象class User{private String name;private String psw;//封装getter/setter省略}//把一个json对象变成userString u="{'name':'sail331x','psw':'123456789'}";//用user对象接收json中的元素User user=(User)JSONObject.toBean(JSONObject.fromObject(u),User.class);//把一个user变成json对象:JSONObject juser=JSONObject.fromObject(user);//json字符串jstrString jstr=juser.toString();
复制代码
复制代码
//方法三,json对象直接转list集合、list集合转json对象//声明一个Person 实体类:import java.util.Date;public class Person {    String id;    int age;    String name;    Date birthday;    //get,set方法省略}//测试json数据转换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':'zhuangsan','age':18},{'name':'lisi','age':20}]";    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':'zhuangsan','age':18},{'name':'lisi','age':20}]";    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':'zhuangsan','age':20},{'name':'lisi','age':18}]";    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字符串数组: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
好文要顶 关注我 收藏该文  
godlovelian
关注 - 33
粉丝 - 2
+加关注
0
0
(请您对文章做出评价)
« 上一篇:查看两个集合中有没有相同的元素的方法。Collections disjoint
» 下一篇:超级方便的linux命令手册
posted @ 2015-05-05 15:20 godlovelian 阅读(150) 评论(0)  编辑 收藏
刷新评论刷新页面返回顶部
【推荐】50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
【推荐】融云即时通讯云-豆果美食、Faceu等亿级APP都在用
【推荐】报表开发别头大!类Excel 复杂报表开发实例,即学即用
【推荐】福利Time,讯飞开放平台注册即送好礼!
【推荐】阿里云万网域名:.xin .com将推出重磅优惠
最新IT新闻:
· 马云手下最苦逼的员工:每年花1个亿买买买
· 终于来了!微软.Net Core 1.0下载放出
· 超级高铁Hyperloop创始人透露,已经在北京建立研究中心
· 迪信通将推自有手机品牌 扩充渠道年底门店超万家
· 传支付宝将收购德国金融企业25%股权 或服务其欧洲扩张计划
» 更多新闻...
最新知识库文章:
· 我听到过的最精彩的一个软件纠错故事
· 如何避免软件工程中最昂贵错误的发生
· 拒绝传统,看 Facebook 如何以三大法宝化茧成蝶
· 当我们谈论极简设计,我们在谈些什么
· 用户体验设计遇见色彩情感
» 更多知识库文章...
0 0
原创粉丝点击