广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州​map和json字符串如何互转?_北大青鸟IT学校

作者:邓华发布时间:2021-06-10分类:Java技术浏览:1150


导读:Java是现在非常主流的编程语言之一,很多人想转行学习Java。那么,​map和json字符串如何互转?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

Java是现在非常主流的编程语言之一,很多人想转行学习Java。那么,map和json字符串如何互转?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

map--》》json字符串

  1. public static void mapToJSON(){

  2. Student stu=new Student();

  3. stu.setName("JSON");

  4. stu.setAge("23");

  5. stu.setAddress("中国上海");

  6. Map<String,Student> map=new HashMap<String,Student>();

  7. map.put("first", stu);

  8. //1、JSONObject

  9. JSONObject mapObject=JSONObject.fromObject(map);

  10. System.out.println("mapObject"+mapObject.toString());

  11. //2、JSONArray

  12. JSONArray mapArray=JSONArray.fromObject(map);

  13. System.out.println("mapArray:"+mapArray.toString());

  14. }

打印结果,

mapObject{"first":{"address":"中国上海","age":"23","name":"JSON"}} mapArray:[{"first":{"address":"中国上海","age":"23","name":"JSON"}}]

上面打印了两种形式。

json字符串--》》map

JSON字符串不能直接转化为map对象,要想取得map中的键对应的值需要别的方式,

  1. public static void jsonToMap(){

  2. String strObject="{\"first\":{\"address\":\"中国上海\",\"age\":\"23\",\"name\":\"JSON\"}}";

  3. //JSONObject

  4. JSONObject jsonObject=JSONObject.fromObject(strObject);

  5. Map map=new HashMap();

  6. map.put("first", Student.class);

  7. //使用了toBean方法,需要三个参数 

  8. MyBean my=(MyBean)JSONObject.toBean(jsonObject, MyBean.class, map);

  9. System.out.println(my.getFirst());

  10. }

打印结果,

Student [name=JSON, age=23, address=中国上海]

下面是MyBean的代码,

  1. package com.cn.study.day4;

  2. import java.util.Map;

  3. import com.cn.study.day3.Student;

  4. public class MyBean {

  5. private Student first;

  6. public Student getFirst() {

  7. return first;

  8. }

  9. public void setFirst(Student first) {

  10. this.first = first;

  11. }

  12. }

使用toBean()方法是传入了三个参数,第一个是JSONObject对象,第二个是MyBean.class,第三个是一个Map对象。通过MyBean可以知道此类中要有一个first的属性,且其类型为Student,要和map中的键和值类型对应,即,first对应键 first类型对应值的类型。

以上所述是小编给大家介绍的JSON字符串与java对象的相互转换实例详解,希望对大家有所帮助!想了解更多关于Java的资讯,可以来惠州北大青鸟新方舟校区了解一下。

java3.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表