前台写json直接是:var array = [ ] ;

调用方法:array[index],若是对象,再[“key”]

var obj = {''a'':123 , "b":"hello" , "c": array}

调用方法:obj.a 或者 obj["a"]

直接就是var啊

var str = " {''a'':123 , "b":"hello" , "c": array}"   str就没那么多方法

**************************************************

 import java.util.LinkedList;
import java.util.*;
import java.util.ListIterator; import net.sf.json.JSONArray;
import net.sf.json.JSONObject; public class a11111111 {
public static void main(String[] args){ JSONObject json=new JSONObject();
json.put("name", "小明");
json.put("age", "10");
//输出json是:{"name":"小明","age":"10"}
//json是一个实实在在数据结构,可以有这些方法json.isEmpty()
//若是:字符串就没这么多的方法 JSONArray ja=new JSONArray();
ja.add("1");
ja.add("2");
ja.add("3");
ja.add(3,json);
//["1","2","3",{"name":"小明","age":"10"}]
System.out.println(ja.toString());
System.out.println(ja.get(3));
// {"name":"小明","age":"10"} 点出来的是一个字符串,不是数据结构
//System.out.println(ja.get(3).get("age"));点不出get方法,ja.get(3).这个点点出来的方法都是一些所有的都有方法
String str = (String)ja.get(3); //str能接收这个字符串 /*ja.get(3)实质是表示的是字符串表示*/
//现在ja是一个字符串,解析成上面那个结构
JSONObject jsonObject = JSONObject.fromObject(ja.get(3));
System.out.println(jsonObject.get("age")); //获得10 HashMap<String, Object> data = new HashMap<String, Object>();
Iterator it = jsonObject.keys();
// 遍历jsonObject数据,添加到Map对象
while (it.hasNext())
{
String key = String.valueOf(it.next());
String value = (String) jsonObject.get(key);
data.put(key, value);
}
System.out.println(data);
// {name=小明, age=10}
}
} // {name=小明, age=10} map数据结构长成这样
// {"name":"小明","age":"10"} JSONObject 数据结构长成这样

————————————————————————

从map - json对象 - json字符 1 public class a11111111 {

      public static void main(String[] args) {
Map map = new HashMap();
map.put("msg", "yes");//map里面装有yes
JSONObject jsonObject = JSONObject.fromObject(map);
//和上面复用同一段代码,
System.out.println("输出的结果是:" + jsonObject);
//3、将json对象转化为json字符串
String result = jsonObject.toString();
System.out.println(result);
}
/*输出的结果是:{"msg":"yes"}*/
// {"msg":"yes"} 长的一样:但上面那个是数据结构(JSONobject),下面那个是字符串
// java中数据结构可以直接按名输出,也可以数据结构名.toString输出
// 上面那个可以调用很多方法-下面那个仅仅是个字符串没那么多方法
}
 JSONObject jsonObject = JSONObject.fromObject

map和jsonObject 这2中数据结构之间转换的更多相关文章

  1. java和js中JSONObject,JSONArray,Map,String之间转换

    --------------------------------------------------Java中--------------------------------------------- ...

  2. JavaScriptES6中Map与对象、数组,JSON之间的相互转换

    JavaScriptES6中Map与对象.数组,JSON之间的相互转换 https://blog.csdn.net/c__dreamer/article/details/82183130

  3. JSONObject,JSONArray,Map,String之间转换

    http://blog.csdn.net/superit401/article/details/51727739 1.String转JSONObject String jsonMessage = &q ...

  4. Spring基础——在 IOC 容器中 Bean 之间的关系

    一.在 Spring IOC 容器中 Bean 之间存在继承和依赖关系. 需要注意的是,这个继承和依赖指的是 bean 的配置之间的关系,而不是指实际意义上类与类之间的继承与依赖,它们不是一个概念. ...

  5. 《同一个类中不同方法之间的调用相关问题(省略的类名或者this)》

    //同一个类中不同方法之间的调用相关问题(省略的类名或者this) class A { public void B() { System.out.println("b方法运行"); ...

  6. 深入分析:Android中app之间的交互(二,使用ComponentName)

    在前一篇相关主题的博文中我们了解了如何使用Action来启动当前应用之外的Activity处理我们的业务逻辑,在本篇笔记中我在简单介绍一下使用ComponentName来与当前应用之外的应用进行交互. ...

  7. Java中int类型和tyte[]之间转换及byte[]合并

    JAVA基于位移的 int类型和tyte[]之间转换 [java] view plaincopy /** * 基于位移的int转化成byte[] * @param int number * @retu ...

  8. 持续集成:TestNG中case之间的关系

    持续集成:TestNG中case之间的关系   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq: ...

  9. JAVA 8 主要新特性 ----------------(二)版本中数据结构的修改浅析

    一.版本中数据结构的修改浅析1.HashMap.HashSet.ConcurrentHashMap的数据结构发生变化 (1)HashMap简介(结构:哈希表+链表) HashMap存储的数据是无序的, ...

随机推荐

  1. English trip V1 - 1.How Do You Feel Now? Teacher:Lamb Key:形容词(Adjectives)

    In this lesson you will learn to describe people, things, and feelings.在本课中,您将学习如何描述人,事和感受. STARTER  ...

  2. 4-6 select_tag和select的区别和理解。javascript_tag

    via: :all是什么意思?主要用于约束http动作. <%= select_tag "set_locale", options_for_select(LANGUAGES, ...

  3. 原生js实现选项卡

    html代码: <div class="tab"> <ul> <li class="selected">图片</li& ...

  4. 37mysql 表操作

    创建表 #语法: create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); #注意: 1. 在同一张 ...

  5. 『PyTorch』第五弹_深入理解autograd_中:Variable梯度探究

    查看非叶节点梯度的两种方法 在反向传播过程中非叶子节点的导数计算完之后即被清空.若想查看这些变量的梯度,有两种方法: 使用autograd.grad函数 使用hook autograd.grad和ho ...

  6. km板子(二分图最大权匹配)

    //#pragma comment(linker, "/stack:200000000") //#pragma GCC optimize("Ofast,no-stack- ...

  7. zk maxClientCnxns参数

    在zk模板配置文件中有: # the maximum number of client connections. # increase this if you need to handle more ...

  8. O(logn)二叉树中的意义----高性能(四)

    转载地址:https://zhidao.baidu.com/question/239708227508660244.html?qbl=relate_question_2&word=%CA%B1 ...

  9. maven相关资源

    http://mvnrepository.com/search?q= http://maven.aliyun.com/nexus/#welcome https://www.w3cschool.cn/m ...

  10. Nginx在windows上安装 及 Nginx的配置及优化

    https://www.cnblogs.com/Chiler/p/8027167.html http://www.runoob.com/linux/nginx-install-setup.html 前 ...