聊聊JSON

1.定义:

        JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。以键值对形式存储数据,易于阅读和编写,同时也易于机器解析和生成;

        主要部分:花括号,方括号,冒号和逗号

                        花括号表示一个“容器”
                        方括号装载数组
                        名称和值用冒号隔开
                        数组元素通过逗号隔开

2.作用:

        主要是用来存储数据,进行数据的交互。

3.使用方式:

        主要有两种形式:

        3.1  对象的形式:以花括号括起来的部分,以键值对的形式存储数据,数据和数据之间使用逗号分隔。

                例如:{"name":"张三","age":14,"sex":“男”}

        3.2  数组的形式:以方括号括起来的部分,其中存储的是对象,对象之间使用逗号分隔。

                例如:[{"name":"张三","age":14,"sex":“男”}, {"name":"李四","age":15,"sex":“男”}]

         数据和json的转换:

                数据转换JSON对象

                        JSONObject jsonObject = JSONObject.fromObject(jsonString)

                        JSONArray jsonArray = JSONArray.fromObject(jsonString);

                获取数据:

                        JSONArray jsonArray = JSONArray.fromObject(jsonString);
                        Double[] doubleArray = new Double[jsonArray.size()];
                        for (int i = 0; i < jsonArray.size(); i++) {
                            doubleArray[i] = jsonArray.getDouble(i);   //可以是getInt(i),getString(i)

                        }

                        jsonObect对象的方法:

                        jsonObject.getBoolean(String key)  返回:boolean

                        聊聊JSON

4.json和xml的对比:

        XML和JSON优缺点
    (1).XML的优缺点
    <1>.XML的优点
      A.格式统一,符合标准;
      B.容易与其他系统进行远程交互,数据共享比较方便。
    <2>.XML的缺点
      A.XML文件庞大,文件格式复杂,传输占带宽;
      B.服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;
      C.客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;
      D.服务器端和客户端解析XML花费较多的资源和时间。
    (2).JSON的优缺点
    <1>.JSON的优点:
      A.数据格式比较简单,易于读写,格式都是压缩的,占用带宽小;
      B.易于解析,客户端JavaScript可以简单的通过eval()进行JSON数据的读取;
      C.支持多种语言,包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等服务器端语言,便于服务器端的解析;
      D.在PHP世界,已经有PHP-JSON和JSON-PHP出现了,偏于PHP序列化后的程序直接调用,PHP服务器端的对象、数组等能直接生成JSON格式,便于客户端的访问提取;
      E.因为JSON格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且完成任务不变,并且易于维护。
    <2>.JSON的缺点
      A.没有XML格式这么推广的深入人心和喜用广泛,没有XML那么通用性;
      B.JSON格式目前在Web Service中推广还属于初级阶段。

        3.XML和JSON的优缺点对比

    (1).可读性方面。
    JSON和XML的数据可读性基本相同,JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形   式,XML可读性较好些。
    (2).可扩展性方面。
XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。
    (3).编码难度方面。
XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的编码明显比XML容易许多,即使不借助工具也能写出JSON的代码,可是要写好XML就不太容易了。
    (4).解码难度方面。
XML的解析得考虑子节点父节点,让人头昏眼花,而JSON的解析难度几乎为0。这一点XML输的真是没话说。
    (5).流行度方面。
XML已经被业界广泛的使用,而JSON才刚刚开始,但是在Ajax这个特定的领域,未来的发展一定是XML让位于JSON。到时Ajax应该变成Ajaj(Asynchronous Javascript and JSON)了。
    (6).解析手段方面。
JSON和XML同样拥有丰富的解析手段。
    (7).数据体积方面。
JSON相对于XML来讲,数据的体积小,传递的速度更快些。
    (8).数据交互方面。
JSON与JavaScript的交互更加方便,更容易解析处理,更好的数据交互。
    (9).数据描述方面。
JSON对数据的描述性比XML较差。
    (10).传输速度方面。

JSON的速度要远远快于XML。

以上这段引用的是:https://www.cnblogs.com/SanMaoSpace/p/3139186.html