json 中关于json数组跟json对象的区别

原文地址:http://blog.csdn.net/lafengwnagzi/article/details/52789171

JSON 是存储和交换文本信息的语法

JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。

由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。

JSON 语法规则

JSON 语法是 JavaScript 对象表示法语法的子集。

  • 数据在名称/值对中
  • 数据由逗号分隔
  • 花括号保存对象
  • 方括号保存数组

JSON 名称/值对

JSON 数据的书写格式是:名称/值对。

名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:

"firstName" : "John" 

JSON 值

JSON 值可以是:

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在方括号中)
  • 对象(在花括号中)
  • null

JSON 对象

JSON 对象在花括号中书写:

对象可以包含多个名称/值对:

{ "firstName":"John" , "lastName":"Doe" }

JSON 数组

JSON 数组在方括号中书写:

数组可包含多个对象:

{
"employees": [
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName":"Jones" }
]
}

以上是关于json对象或者数组的在w3c的定义

主要的区别的在于json数组是用方括号 书写的,json对象是花括号 这个主要是初学者容易犯错误

JSONObject interactiveSignVos = JSON.parseObject(userInfoJson);  

这个是fastjson 中将json对象转化成Map的形式的写法

List<User> userList = JSON.parseArray(userInfoJson,User.class);  

这个是将json对象转换成对象list,不过如果只有一个的话就用上面那个

上一篇:Linux -- 在多线程程序中避免False Sharing


下一篇:hibernate -- 注解映射实体和表