Java解析Json字符串--Map
时间:2022-05-15
本文章向大家介绍Java解析Json字符串--Map,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Json字符串示例:
{
"age": 20,
"gender": "male",
"grades": "三班",
"name": "苏三",
"weight": 63.5
}
遇到这样的格式的Json字符串,我们可以将其解析成一个bean,同时我们也可以直接将其解析为Map。
解析成Map比较简单,我们直接来看看解析方法。
第一种方法:
package com.test;
import java.util.HashMap;
import java.util.Map;
import net.sf.json.JSONObject;
public class Domain {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
String jsonStr = "{"weight":51.3,"name":"露西","age":26,"gender":"female","grades":"三班"}";
Map<String, Object> map = new HashMap<String, Object>();
map = JSONObject.fromObject(jsonStr);
System.out.println(map.get("weight"));
System.out.println(map.get("name"));
System.out.println(map.get("age"));
System.out.println(map.get("gender"));
System.out.println(map.get("grades"));
}
}
说明:
- 这种方法比较暴力直接,我们直接将得到的JSONObject赋值给map即可,连强制类型转换都不需要。(个人感觉这种方式比较简单方便,但是网上很少有这样实现的,具体原因未知。JDK1.7下测试完全没问题。)
第二种方法:
package com.test;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import net.sf.json.JSONObject;
public class Domain {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
String jsonStr = "{"weight":51.3,"name":"露西","age":26,"gender":"female","grades":"三班"}";
Map<String, Object> map = new HashMap<String, Object>();
JSONObject jsonObject = JSONObject.fromObject(jsonStr);
Iterator<String> keys = jsonObject.keys();//定义迭代器
String key = null;
Object value = null;
while(keys.hasNext()){
key = keys.next();
value = jsonObject.get(key);
map.put(key, value);
}
System.out.println(map.get("weight"));
System.out.println(map.get("name"));
System.out.println(map.get("age"));
System.out.println(map.get("gender"));
System.out.println(map.get("grades"));
}
}
说明:
- 这种方式比较传统,网上也大都是采用的这种方式。
最后,我们来看看怎么通过Map生成Json字符串
package com.test;
import java.util.HashMap;
import java.util.Map;
import net.sf.json.JSONObject;
public class Domain {
public static void main(String[] args) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("age", 26);
map.put("gender", "female");
map.put("grades", "三班");
map.put("name", "露西");
map.put("weight", 51.3f);
String jsonStr = JSONObject.fromObject(map).toString();
System.out.println(jsonStr);
}
}
- 委托与事件
- 一款批量修改AE模板的工具
- 深入线程
- 【插件开发】—— 2 插件入门
- 线程间通讯:WaitHandler使用实例及分析
- 域名Deskbike.com刚注册没多久就以五位数结拍
- 一起Polyfill系列:Function.prototype.bind的四个阶段
- winform实现拼图游戏
- 一起Polyfill系列:让Date识别ISO 8601日期时间格式
- Oracle 监听器无法启动(TNS-12537,TNS-12560,TNS-00507)
- Javascript Prototypes之旅(A Plain English Guide to JavaScript Prototypes译文)
- Python补充03 Python内置函数清单
- 不懂JQuery的孩子:自封装Ajax函数
- .Net魔法堂:史上最全的ActiveX开发教程——ActiveX与JS间交互篇
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- laravel利用中间件防止未登录用户直接访问后台的方法
- laravel实现上传图片并在页面显示的例子
- php实现大文件断点续传下载实例代码
- Laravel第三方包报class not found的解决方法
- 使用laravel的migrate创建数据表的方法
- 解决laravel session失效的问题
- php7下的filesize函数
- PHP-FPM 设置多pool及配置文件重写操作示例
- laravel实现登录时监听事件,添加登录用户的记录方法
- php更新cookie内容的详细方法
- php实现映射操作实例详解
- Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法
- yii框架数据库关联查询操作示例
- laravel-admin的多级联动方法
- Laravel数据库读写分离配置的方法