欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JSON入门Java篇-2-JSON数据类型

程序员文章站 2022-03-10 08:23:06
...

       前面我们简单介绍了什么是JSON和JSON的一些特点,在后面,给出了一个JSON的例子。通过这个例子,我们大概对JSON有一个模糊的认识。这篇,我们要介绍JSON的数据类型,通过学习JSON的数据类型表示,彻底能够明白JSON的里面key和value是采用什么数据类型表示的。学习过Java或者其他编程语言的人,都是从数据基本类型学起,有int,float,char,byte等,高级一点的数据类型有数组,字典,列表,结构体等。

还是把前面的JSON例子拿过来

 

{
	"title" : "JSON入门-Java篇",
	"author" : "Anthony",
	"author" : ["JSON基础","JSON常用处理方法介绍"],
	“time” : {
	 	“value” : 2017,
	    “unit” : “天”
	}
}

 

1.JSON中的数据类型组成

JSON中数据类型也分基本数据类型和数据结构类型。

1)数据结构类型

上面的大括号({})和中括号([]), 大括号表示是结构体类型(object),中括号表示是数组类型(array)。

2)基本数据类型

有5中基本数据类型:string, number, true, false,null

       其中,字符串类型就是用双引号包裹的,数字类型,直接写数字就可以,如果数字用双引号,就变成了字符串。true和false是布尔型,还有一种为空,用关键字null表示。

 

2.利用数据类型来描述一个屌丝

需求:利用上面介绍的JSON数据类型,来写一个能够描述一个屌丝。该屌丝的文字描述如下:

-.屌丝名字叫张三

-.年龄是24岁半

-.生日是19xx年xx月xx日

-.毕业学校是蓝翔技校

-.专业是:理发和开挖掘机

-.没有车

-.没有房子

-.没车没房,当然也没有女朋友

       根据上面的条件,我们来拿着条件和JSON的数据类型对照,看看哪些条件的值适合用数字,哪些适合字符串,哪些是null,哪些是数字,哪些是布尔型。例如下面这样设计

1)名字,张三肯定是字符串

2)年龄,24岁半,可以写成24.5,所以这个是一个数字

3)生日,由于JSON是没有日期格式,所以,这个还是一个字符串

4)毕业学校,蓝翔技校,是一个字符串

5)专业,这个地方有两个值,所以,这个需要用数组

6)没有车,没有房,,没有女朋友,可以用null或者布尔型

所以,我们在notepadd++中可以这样写这个JSON数据。

 

{
	“name” : “张三”,
	“age” :  24.5,
	“birthday" : "19xx-xx-xx",
	“school” : “蓝翔技校”,
	“major” : ["理发师", "挖掘机"],
	“car” : null,
	“has_hourse” : false,
	“has_girlfriend" : false

}

注意:

 

       为什么上面写那么多文字来描述,哈哈,因为在json格式中,不支持写注释,所以,我用了那么多文字来一一限定,实际上就是给下面JSON例子写的注释。