利用fastjson对json转map的操作

2018-03-21 01:02:03
 String str = "{\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\"}";    
 //第一种方式    
 Map maps = (Map)JSON.parse(str);    
 System.out.println("这个是用JSON类来解析JSON字符串");    
 for (Object map : maps.entrySet()){    
     System.out.println(((Map.Entry)map).getKey()+"     " + ((Map.Entry)map).getValue());    
 }    
 //第二种方式    
 Map mapTypes = JSON.parseObject(str);    
 System.out.println("这个是用JSON类的parseObject来解析JSON字符串!!!");    
 for (Object obj : mapTypes.keySet()){    
     System.out.println("key为:"+obj+"值为:"+mapTypes.get(obj));    
 }    
 //第三种方式    
 Map mapType = JSON.parseObject(str,Map.class);    
 System.out.println("这个是用JSON类,指定解析类型,来解析JSON字符串!!!");    
 for (Object obj : mapType.keySet()){    
     System.out.println("key为:"+obj+"值为:"+mapType.get(obj));    
 }    
 //第四种方式    
 /**  
  * JSONObject是Map接口的一个实现类  
  */    
 Map json = (Map) JSONObject.parse(str);    
 System.out.println("这个是用JSONObject类的parse方法来解析JSON字符串!!!");    
 for (Object map : json.entrySet()){    
     System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());    
 }    
 //第五种方式    
 /**  
  * JSONObject是Map接口的一个实现类  
  */    
 JSONObject jsonObject = JSONObject.parseObject(str);    
 System.out.println("这个是用JSONObject的parseObject方法来解析JSON字符串!!!");    
 for (Object map : json.entrySet()){    
     System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());    
 }    
 //第六种方式    
 /**  
  * JSONObject是Map接口的一个实现类  
  */    
 Map mapObj = JSONObject.parseObject(str,Map.class);    
 System.out.println("这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!");    
 for (Object map: json.entrySet()){    
     System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());    
 }    
 String strArr = "{{\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\"}," +    
         "{\"00\":\"zhangsan\",\"11\":\"lisi\",\"22\":\"wangwu\",\"33\":\"maliu\"}}";    
// JSONArray.parse()    
 System.out.println(json);


  • 2017-09-14 10:18:25

    15分钟成为Git专家

    不管是以前使用过 Git 还是刚开始使用这个神奇的版本控制工具的开发者,阅读了本文以后都会收获颇丰。如果你是应一名有经验的 GIT 使用者,你会更好的理解 checkout -> modify -> commit 这个过程。如果你刚开始使用 Git,本文将给你一个很好的开端。

  • 2017-09-28 16:42:57

    Linux vmstat命令实战详解

    vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。

  • 2017-10-13 16:21:29

    Activity的四种launchMode

    launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里。这里简单介绍一下task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建一个与之对应的task。

  • 2017-10-16 16:45:45

    Android开发技巧:Application和Instance

    在开发过程中,我们经常会需要用到一些全局的变量或者全局的“管理者”,例如QQ,需要有一个“全局的管理者“保存好友信息,各个activity即可直接通过该”管理者“来获取和修改某个好友信息,显然,这样的一个好友信息,保存到某一个具体的activity里面,然后依靠activity的intent来传递参数是不合适。我们有两种方法来实现这样一个全局的管理者,一种是使用C++/Java中常用的单例模式,另一种是利用Android的Application类,下面一一阐述。

  • 2017-11-01 01:30:45

    解决第三方包内jar包冲突

    这个问题就是因为引入jar包的冲突,这时我们可以在build.gradle中添加如下代码,下方单独的是添加的代码

  • 2017-11-06 01:00:17

    撤销git add

    如何撤销git add,不小心执行了git add . 操作,但是又不能提交所有的文件,因为对应不同的分支,现在怎么样可以将git add 撤销回来

  • 2017-11-10 00:06:15

    CORS: credentials mode is 'include'

    XMLHttpRequest cannot load http://localhost/Foo.API/token. The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. Origin 'http://localhost:5000' is therefore not allowed access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.