1.json字符串就是字符串,只不过格式是Json格式的,以键值对的形式存在,键和值可以是字符串,数字,空值,数组等。

json对象在花括号中书写,一个json对象包含多个键值对,json对象以花括号开始,花括号结束。

{"name1":"value1","name2":"value2","name3":"value3"}

2.json数组在方括号中书写,一个josn数组里面包含多个json对象,方括号开始,方括号结束。
   [{"name1":"value1","name2":"value2"},{"name1":"value1","name2":"value2"}]

3.json字符串中取name2的值

String json = "{'name1':'value1','name2':'value2'}";

将json字符串转换成json对象,再取值

JSONObject jb = JSONObject.fromObject(json);

String name = jb.getString("name2");

4.json数组中取值name12对应的值

String json1 = "{'name1':{'name2':[{'name3':'value3','name4':'value4'},{'name5':'value5','name6':'value6'}],'name7':[{'name8':'value8','name9':'value9'},{'name12':'value12','name13':'value13'}]},'name10':'value10','name11':'value11'}";

先转换成json对象

JSONObject jb1 = JSONObject jb1 = JSONObject.fromObject(json1);

层层剥离,取name1对应的值

JSONObject jb2 = jb1.getJSONObject("name1");

取到的值是name1冒号后面对应的值,是以json对象的形式存在的,然后再取name7对应的值,name7对应的值是json数组,所以:

JSONArray ja1 = jb2.getJSONArray("name7");

ja1的值为 [{'name8':'value8','name9':'value9'},{'name12':'value12','name13':'value13'}]

要取到name12对应的值,此处应该用循环去取,

先定义一个空的json对象:JSONObject jb3 = null;

for(int i = 0;i<ja1.length();i++){
   jb3 = ja1.getJSONObject(i);
}

如果将jb3的值输出一下,输出为{'name8':'value8','name9':'value9'}和{'name12':'value12','name13':'value13'}

再从jb3中取name12对应的值

String name = jb3.getString("name12");

json简介及josn数组中取字符的更多相关文章

  1. js 查找数组中某个字符出现的次数

    1. js 查找数组中某个字符出现的次数 代码示例 let arr = ['asd', 'green', 'yeadt', 'red', 'wati', 'red', 'red'] let index ...

  2. JS中彻底删除json对象组成的数组中的元素

    只是分享一个小知识~ 在JS中,对于某个由json对象组成的数组,例如: var test = [{ "a": "1", "b": &quo ...

  3. 关于将多个json对象添加到数组中的测试

    如果用数组push添加不到数组中的,这个我也不知道是为什么?然后我选择了另一种发放就是从数组出发,逆向添加 最后的数组是这样的: data1=['公司1','公司2','公司3','公司4']; ar ...

  4. 【LeetCode】1408. 数组中的字符串匹配 String Matching in an Array

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 暴力遍历 日期 题目地址:https://leetco ...

  5. 判断json对象是否在数组中

    // 判断对象是否在数组中function objinArrar(check,param){ var isExisted = false; var index = -1; for(var i=0;i& ...

  6. JS 多数组中取最大数组,分组

    代码小结,使用 JS 对数据进行分组,对分组中的数组取最大数组: var combineTemplate = JSON.parse(data.combineTemplate); //根据仪器种类ID分 ...

  7. 将从数组中取到的字符串赋值给了UIImage导致的错误

    Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFConstantStr ...

  8. java从c struct传来的字节数组中取值

    public int getInt(byte[] array,int index) { return (array[index]  & 0xff)  | (array[index + 1] & ...

  9. python 将数组中取某一值的元素全部替换为其他元素的方法

    这里的问题是在做House Price Prediction的时候遇到的,尝试对GarageArea做log转化,但是由于有些房子没有车库,所以GarageArea = 0,再通过log转化变成-in ...

随机推荐

  1. 64位CentOS6.5下Eclipse用Java连接mysql

    1.到官网上下载jdbc驱动,我下载的是mysql-connector-java-5.0.8.tar.gz 2.解压下载到的文件 tar -zxvf mysql-connector-java-5.0. ...

  2. 矩阵连乘 LRJ白书 p141 栈 解析表达式

    #include<iostream> #include<cstdio> #include<cstring> #include<sstream> #inc ...

  3. POJ——T 1160 Post Office

    http://poj.org/problem?id=1160 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 20218   ...

  4. P1294 高手去散步 洛谷

    https://www.luogu.org/problem/show?pid=1294#sub 题目背景 高手最近谈恋爱了.不过是单相思.“即使是单相思,也是完整的爱情”,高手从未放弃对它的追求.今天 ...

  5. Linux统计行数命令wc(转)

    Linux wc命令用于计算字数. 利用wc指令我们可以计算文件的Byte数.字数.或是列数,若不指定文件名称.或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据. 语 ...

  6. post and get

    POST和GET是Web编程中的两个术语,他们是通过URI访问resource的两种方式.简单的说, GET 是把要访问的资源嵌入在URI中. 假设你在一个页面 http://www.myphone. ...

  7. Clojure:解决Selmer与AngularJS的 标签混淆问题

    Selmer是Clojure的一个模板类库,下面是它的一个DEMO模板: <ul> {% for item in items %} <li>{{item}}</li> ...

  8. jQuery Validate Ajax 验证

    jQuery Validate Ajax 验证 <script type="text/javascript"> $(function() { $('#formCityL ...

  9. Oracle 自己主动内存管理 SGA、PGA 具体解释

    ASMM自己主动共享内存管理: 自己主动依据工作量变化调整 最大程度地提高内存利用率 有助于消除内存不足的错误 SYS@PROD>show parameter sga NAME          ...

  10. web 文件上传组件 Plupload

    Plupload官网:点击打开链接   建议下载最新版本号,低版本号会出现浏览器兼容问题. 近期公司有个项目须要在web端使用多文件上传功能.刚開始准备使用HTML5来做.但是IE9下面是都不支持的, ...