java中的json_Java中Json格式总结
Java中Json格式总结
JSON(JavaScript Object Notation) 是⼀种轻量级的基于⽂本的数据交换格式。它采⽤完全独⽴于语⾔的⽂本格式,易于读写同时也易于机器解析和⽣成(⽹络传输速率),因此使JSON成为理想的数据交换语⾔。
数据规则
1. 数据在键值对中
2. 数据由逗号分隔
3. 花括号保存对象
4. ⽅括号保存数组
5. 数据的书写格式是:名称/值对。
例如{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"}
数据格式
1. 对象是⼀个⽆序的“‘名称/值’对”集合。⼀个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟⼀个“:”(冒
号);“‘名称/值’ 对”之间使⽤“,”(逗号)分隔。
2. 数组是值(value)的有序集合。⼀个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使⽤“,”(逗号)分隔。
3. 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或
者数组(array)。这些结构可以嵌套。
4. 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使⽤反斜线转义。⼀个字符(character)即⼀个单独的字符串(character string)。
5. 数值(number)也与C或者Java的数值⾮常相似。除去未曾使⽤的⼋进制与⼗六进制格式。除去⼀些编码细节。
数据类型
类型
描述
Number
在JavaScript中的双精度浮点格式
String
双引号的反斜杠转义的Unicode
Boolean
true 或 false
Array
值的有序序列
Value
它可以是⼀个字符串,⼀个数字,真的还是假(true/false),空(null )等
Object
⽆序集合键值对
Whitespace
可以使⽤任何⼀对中的令牌
null
empty
Java实体之间的映射
JSON
Java
string
java.lang.String
number
java.lang.Number
true|false
ava.lang.Boolean
null
null
array
java.util.List
object
java.util.Map
类型转换
1. String 转换为JSON对象
public class StringToJSON {
public static void main(String[] args) throws JSONException{ //定义JSON字符串
String jsonStr = "{\"id\": 2," +
" \"title\": \"json title\", " +
"\"config\": {" +
"\"width\": 34," +
"\"height\": 35," +
"}, \"data\": [" +
"\"JAVA\", \"JavaScript\", \"PHP\"" +
"]}";
//转换成为JSONObject对象
JSONObject jsonObj = new JSONObject(jsonStr);
//从JSONObject对象中获取数据
JavaBean bean = new JavaBean();
/
/根据属性名称获取int型数据;
bean.Int("id"));
json值的类型有哪些//根据属性名获取String数据;
bean.String("title"));
//根据属性名获取JSONObject类
JSONObject config = JSONObject("config");
bean.Int("width"));
bean.Int("height"));
//根据属性名获取JSONArray数组
JSONArray data = JSONArray("data");
for(int index = 0, length = data.length(); index < length; index++) { }
}
}
2. JSON对象转换为String字符串
public static void main(String[] args) throws JSONException {
//创建JSONObject对象
JSONObject json = new JSONObject();
//向json中添加数据
json.put("username", "wanglihong");
json.put("height", 12.5);
json.put("age", 24);
//创建JSONArray数组,并将json添加到数组
JSONArray array = new JSONArray();
array.put(json);
//转换为字符串
String jsonStr = String();
System.out.println(jsonStr);
}
最终输出结果为: [{"username":"wanglihong","height":12.5,"age":24}] 3. 集合转换为JSONArray对象
public static void main(String[] args) throws JSONException {
//初始化ArrayList集合并添加数据
List < String > list = new ArrayList < String > ();
list.add("username");
list.add("age");
list.add("sex");
//初始化HashMap集合并添加数组
Map map = new HashMap();
map.put("bookname", "CSS3实战");
map.put("price", 69.0);
//初始化JSONArray对象,并添加数据
JSONArray array = new JSONArray();
array.put(list);
array.put(map);
//⽣成的JSON字符串为:[["username","age","sex"],{"price":69,"bookname":"CSS3实战"}] }
总结
1. 使⽤基于JavaScript的应⽤程序,其中包括浏览器扩展和⽹站
2. 使⽤JSON格式序列化和结构化的数据传输⽹络连接
3. 主要⽤于服务器和Web应⽤程序之间的数据传输
4. Web服务和API采⽤JSON格式提供公共数据
5. 可以⽤来与现代编程语⾔
版权声明:本⽂为JAVASCHOOL原创⽂章,未经本站允许不得转载。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论