原文地址: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,不過如果只有一個的話就用上面那個