map和jsonObject 这2中数据结构之间转换

前台写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就没那么多方法

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

 1 import java.util.LinkedList;
 2 import java.util.*;
 3 import java.util.ListIterator;
 4
 5 import net.sf.json.JSONArray;
 6 import net.sf.json.JSONObject;
 7
 8
 9 public class a11111111 {
10     public static void main(String[] args){
11
12         JSONObject json=new JSONObject();
13         json.put("name", "小明");
14         json.put("age", "10");
15         //输出json是:{"name":"小明","age":"10"}
16         //json是一个实实在在数据结构,可以有这些方法json.isEmpty()
17         //若是:字符串就没这么多的方法
18
19         JSONArray ja=new JSONArray();
20         ja.add("1");
21         ja.add("2");
22         ja.add("3");
23         ja.add(3,json);
24         //["1","2","3",{"name":"小明","age":"10"}]
25         System.out.println(ja.toString());
26         System.out.println(ja.get(3));
27         // {"name":"小明","age":"10"}  点出来的是一个字符串,不是数据结构
28         //System.out.println(ja.get(3).get("age"));点不出get方法,ja.get(3).这个点点出来的方法都是一些所有的都有方法
29         String str = (String)ja.get(3); //str能接收这个字符串
30
31
32         /*ja.get(3)实质是表示的是字符串表示*/
33         //现在ja是一个字符串,解析成上面那个结构
34         JSONObject jsonObject = JSONObject.fromObject(ja.get(3));
35         System.out.println(jsonObject.get("age")); //获得10
36
37         HashMap<String, Object> data = new HashMap<String, Object>();
38         Iterator it = jsonObject.keys();
39            // 遍历jsonObject数据,添加到Map对象
40            while (it.hasNext())
41            {
42                String key = String.valueOf(it.next());
43                String value = (String) jsonObject.get(key);
44                data.put(key, value);
45            }
46            System.out.println(data);
47                //  {name=小明, age=10}
48     }
50 }
51
52 //     {name=小明, age=10}  map数据结构长成这样
53 //     {"name":"小明","age":"10"}   JSONObject 数据结构长成这样          

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

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

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

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

深入分析:Android中app之间的交互

在我们开发Android App应用的时候,有些需求需要我们启动其他的App来处理一些逻辑,例如我们需要根据一个地址来调用系统或者相关的地图Map App,这样我们不用在自己的App中编写相应的功能,而是通过Intent来发送一些请求,调用相关的应用来处理这些请求.并且我们称这种Intent为隐式的Intent:这种隐式的Intent是相对于显式的Intent来讲的.显式的Intent我们都比较熟悉,显式的Intent常常需要声明类的名称,而隐式的Intent我们需要声明一个Action,我们A

深入Linux内核架构 - 内核之中数据结构之间的关系图 &amp; 设备驱动程序(转)

内核之中数据结构之间的关系图 设备驱动程序

android中activity之间传递数据的3种方式

在android开发中总是需要不停的传递数据,特别是不同的Activity之间.在这里小编介绍自己所知的3种Activity的跳转方式. 第一种:静态传递数据 直接上部分代码:在第一个Activity中 Intent intent = new Intent(); intent.setClass(MainActivity.this,SecondActivity.class); SecondActivity.usrname = "jack"; SecondActivity.password

rails 中model之间的 association (:inverse_of)

class Customer < ActiveRecord::Base has_many :orders end class Order < ActiveRecord::Base belongs_to :customer end 如上代码两个model在做如下查询的时候: c = Customer.first o = c.orders.first c.first_name == o.customer.first_name # true c.first_name = "other na

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

在前一篇相关主题的博文中我们了解了如何使用Action来启动当前应用之外的Activity处理我们的业务逻辑,在本篇笔记中我在简单介绍一下使用ComponentName来与当前应用之外的应用进行交互. 在介绍Component之前,我们首先来了解ComponentName这个类:ComponentName与Intent同位于android.content包下,我们从Android官方文档中可以看到,这个类主要用来定义可见一个应用程序组件,例如:Activity,Service,Broadcast

借助Intent实现Android工程中Activity之间Java对象的传递——实现Parcelable接口

借助Intent实现Android工程中Activity之间Java对象的传递有两种方式:一种所传递对象实现了Serializable接口:另一种是所传递对象实现了Parcelable接口,本博客总结传递对象实现Parcelable接口的情况下如何实现Java对象传递: 代码1.添加名为"User.java"的文件: package com.ghj.vo; import android.os.Parcel; import android.os.Parcelable; public cl

ArcGIS中数据之间的转换接口IFeatureDataConverter2

之前我写过一篇文章关于ArcGIS各种空间数据格式之间转换的通用方法:ArcGIS中sde,mdb,shp数据之间的转换,这里使用的主要接口方法就是用到了IFeatureDataConverter接口的CovertFeatureClass方法,在帮助文档中的说明是"可以被使用来复制或者转换Table,Feature Classes或者是Feature Datasets到其他位置或者数据库格式",具体的步骤,在帮助Converting simple data中写的很清楚详细,这里就不多说

借助Intent实现Android工程中Activity之间Java对象的传递——实现Serializable接口

借助Intent实现Android工程中Activity之间Java对象的传递有两种方式:一种所传递对象实现了Serializable接口:另一种是所传递对象实现了Parcelable接口,本博客总结传递对象实现Serializable接口的情况下如何实现Java对象传递: 代码1.添加名为"User.java"的文件: package com.ghj.vo; import java.io.Serializable; public class User implements Seria

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

1 //同一个类中不同方法之间的调用相关问题(省略的类名或者this) 2 class A 3 { 4 public void B() 5 { 6 System.out.println("b方法运行"); 7 } 8 public void C() 9 { 10 B();//下面引用<疯狂Java讲义>中的一段话. 11 /* 12 因为Java里的方法不能独立存在,它必须属于一个类或一个对象, 13 因此方法也不能直接像函数那样被独立执行,执行方法时必须使用 14 类或对