在Java中如何解析JSON格式数据?

最近学了怎么解析JSON数据,今天记录一下。

先来一段介绍。

JSON是一种轻量级的数据交换格式,用途非常广泛。

JSON长什么样子

这就是json的样子

JSON由一个个键值对对组成,左边是键(key),中间是冒号(:),右边是值(value)。

Key为字符串类型,value可以是字符串,数字,数组,对象。

例如上例中 “名字”的value是字符串 “年龄”的value是数字 “爱好”的value是数组 “喜欢的游戏”的value是对象

可以看出,只需简单的几行字,就可以描述小明同学。更重要的事,机器也能轻易读懂这样的结构。

那么在Java中该如何解析JSON数据呢

JSON在JavaScript中解析非常方便,这是因为JSON就是来源于JavaScript,JSON语法是JavaScript对象表示法的子集。而在Java中,如果要解析,则需要使用第三方架包。有很多免费的架包供我们使用,今天小黄人主要介绍两种:org.json.jar, gson-2.2.4.jar

这两个架包直接百度包名就可以搜到。

org.json下载地址 http://www.docjar.com/jar_detail/json-org.jar.html gson下载地址 https://github.com/google/gson

org.json.jar

把JSON字符串直接转成JSONObject对象,利用该对象的getxxx方法就可以读出JSON中的数据。

还有很多方法,在实际使用过程中慢慢积累。

gson-2.2.4.jar

gson是谷歌的一个开源项目,gson的优势在于可以把json直接转成实体类,或者把实体类直接转成json,因为实体类是Java中必不可少的一部分,有利于结构化数据,所以这是一个非常实用的功能。

gson还有很多实用的功能,需要在以后的开发中逐渐学习。

上述例子中用到的json数据

上述例子中用到的实体类YoudaoResult.java

原文发布于微信公众号 - 小黄人打代码(MinionsCoding)

原文发表时间:2016-09-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏工科狗和生物喵

【计算机本科补全计划】指令:计算机的语言(MIPS) Part3

正文之前 今天学的很尴尬,因为有事情,而且新认识了两个计算机学院的保研大佬,不得不感叹我找的导师之强,第一个去上交的,是被金老师推荐去的,听说是跟了目前亚洲第一...

3048
来自专栏C语言及其他语言

【编程经验】C语言程序真正的启动函数(文末有福利,第二弹)

又到了小编和大家说到的时间了,闲话少说,直接上正题,今天就讲讲“C语言程序真正的启动函数”。 为什么要用”真正”这个词?因为我们从...

27312
来自专栏python学习路

二、Python介绍

Python 是一门什么样的语言? python是一门动态解释性的强类型定义语言。 编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、...

2864
来自专栏从零开始学 Web 前端

嵌入式面试题(一)

4. 空指针(null pointer)指向了内存的什么地方(空指针的内部实现)?

802
来自专栏人工智能

机器学习如何从 Python 2 迁移到 Python 3

关键时刻,第一时间送达! ? 本文经授权转自人工智能头条。 Python 已经成为机器学习及其他科学领域中的主流语言。它不但与多种深度学习框架兼容,而且还包含优...

2646
来自专栏Golang语言社区

十条有用的 Golang语言 技术

十条有用的 Go 技术 这里是我过去几年中编写的大量 Go 代码的经验总结而来的自己的最佳实践。我相信它们具有弹性的。这里的弹性是指: 某个应用需要适配一个灵...

3536
来自专栏我的技术专栏

Java多线程编程—锁优化

1387
来自专栏新智元

Go 2.0发布在即,程序员有太多话要说

Go语言的开发者正着手准备开发2.0版本,并从以下三个方面发布了初步的设计方案(非官方正式版),以供社区开展讨论:

2591
来自专栏数据小魔方

多条件排序

今天跟大家分享多条件排序的技巧! 之前分享过关于excel中的排序菜单及所有的排序函数,但是这些菜单和函数的排序功能仅限于单列排序,无法完成多列的多条件排序功...

2646
来自专栏华仔的技术笔记

浅谈Objective-C设计模式(Design Pattern)import "Singleton.h"

3237

扫码关注云+社区