JSON是什么
- JSON 指的是 JavaScript 对象表示法(
J
avaS
criptO
bjectN
otation) - JSON 是轻量级的文本数据交换格式
- JSON 独立于语言:虽然JSON 使用 JS语法来描述对象,但是独立于语言和平台。
- JSON 解析器和 JSON 库支持不同的编程语言,(PHP,JSP,.NET,JAVA)等编程语言都支持JSON。
- JSON 具有自我描述性,它比比XML 更小、更快,更易解析
常用方法
json字符串—>对象
// json字符串转换为JSONObject对象
JSONObject parseObject(String jsonString)
// json字符串转换为JSONArray对象
JSONArray parseArray(String jsonString)
// json字符串转换为javaBean
T parseObject(String jsonString, Class<T> clazz)
List<T> parseArray(String jsonString, Class<T> clazz)
对象—>json字符串
String toJSONString(Object object)
解析JSON字符串
{
"112":{
"name":"黄晓明","score":55},"113":{
"name":"赵薇","score":63},"114":{
"name":"陈坤","score":87},"115":{
"name":"周迅","score":82}}
JSON格式:
{
"112": {
"name": "黄晓明",
"score": 55
},
"113": {
"name": "赵薇",
"score": 63
},
"114": {
"name": "陈坤",
"score": 87
},
"115": {
"name": "周迅",
"score": 82
}
}
首先要明白,以 { } 开头的是JSONObject,以 [ ] 开头的是JSONArray
@Test
public void testJson01() {
String str = "{\"112\":{\"name\":\"黄晓明\",\"score\":55},\"113\":{\"name\":\"赵薇\",\"score\":63},\"114\":{\"name\":\"陈坤\",\"score\":87},\"115\":{\"name\":\"周迅\",\"score\":82}}";
// 解析字符串,先将其转为JSONObject对象
JSONObject jsonObject = JSONObject.parseObject(str);
// 获取所有key的集合
Set<String> keySet = jsonObject.keySet();
Iterator<String> iterator = keySet.iterator();
// 迭代遍历
while (iterator