JSON快速入门(Java版)

一、JSON简介

1、什么是JSON

  JSON是行业使用广泛的一种数据格式。
  JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。简单地说,JSON可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是JavaScript很容易解释它,而且 JSON 可以表示比 “名称 / 值对” 更复杂的结构。
  总结什么是 JSON ?
  JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation);
  JSON 是轻量级的文本数据交换格式
  JSON 独立于语言 *
  JSON 具有自我描述性,更易理解。
  * JSON 使用 JavaScript 语法来描述数据对象(JSON 语法是 JavaScript 对象表示法语法的子集),但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。
  JSON的优点:易于人的阅读和编写,方便程序解析与生成。

2、JSON语法结构

  标准的JSON数据表示
  数据结构
  Object:使用花括号 {} 包含的键值对结构,key必须是string类型,value为任何基本类型或数据结构,逗号分隔数据。
  Array:使用中括号 [] 来表示,并用逗号来分隔元素。
  基本类型:string、number、true、false、null。
简单实例(first.json)

{
   
    "name" : "张三",
    "age" : 25,
    "birthday" : "1994-12-12",
    "school" : "西安电子科技大学",
    "major" : ["Java", "C++"],
    "has_house" : false,
    "house" : null,
    "car" : {
   
        "sign" : "奔驰",
        "model" : "SUV"
    },

    "comment" : "标准JSON里面没有注释"
}

二、使用Java操作JSON

  使用Java操作JSON可以使用org.json包(Android SDK中使用的JSON官方库),在JSON的官网:http://www.json.org/ 中可以找到。使用Maven项目则添加如下依赖即可:

<dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20180813</version>
</dependency>

1、创建JSON对象的几种方式

import java.util.HashMap;
import java.util.Map;

import org.json.JSONObject;

import com.zxt.demo.Car;
import com.zxt.demo.Person;

public class JSONObjectTest {
   
    
    public static void main(String[] args) {
   
        jSONObject();
        creatJsonByMap();
        creatJsonByBean();
    }

    /**
     * @Description:使用JSONObject来构建JSON对象
     */
    private static void jSONObject() {
   
        // 创建一个JSONObject对象
        JSONObject zhangsan = new JSONObject();
        Object nullObj = null;
        
        zhangsan.put("name", "张三");
        zhangsan.put("age", 25);
        zhangsan.put("birthday", "1994-12-12");
        zhangsan.put("school", "西安电子科技大学");
        zhangsan.put("major", new String[] {
   "Java", "C++"});
        zhangsan.put("has_house", false);
        zhangsan.put("house", nullObj);
        JSONObject car = new JSONObject();
        car.put("sign", "奔驰");
        car.put("model", "S
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值