(精)字符串,map -> json对象->map(初学者必读)
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 obj=new JSONObject();
obj.put("name", "小明");
obj.put("age", "10");
//输出json对象这种数据结构是:{"name":"小明","age":"10"}
JSONArray jsonobj = JSONArray.fromObject(obj); 对象转数组
//[{"name":"小明","age":"10"}] //数组
JSONArray array=new JSONArray();
array.add("1");
array.add("2");
array.add("3");
array.add(3,obj);
//["1","2","3",{"name":"小明","age":"10"}]
//字符串
String str ="{name:Tom,age:10}" ; // 不可以这样定义str
String str1 = "{\"name\": \"小明\",\"age\": 10 }";
//MAP
Map<String, Object> map = new HashMap<String, Object>();
map.put("1001", "yes");//map里面装有yes
map.put("1002", array);//map里面装有yes
// {1002=["1","2","3",{"name":"小明","age":"10"}], 1001=yes} //数组不可转对象
// JSONObject jsonobj = JSONObject.fromObject(array);
JSONObject jsonobj0 = JSONObject.fromObject(array.get(3));//字符串转对象
JSONObject jsonobj1 = JSONObject.fromObject(str1);
JSONObject jsonobj2 = JSONObject.fromObject(map);//map转对象
System.out.println(jsonobj0);
System.out.println(jsonobj1);
System.out.println(jsonobj2); /*{"name":"小明","age":"10"}
{"name":"小明","age":10}
{"1002":["1","2","3",{"name":"小明","age":"10"}],"1001":"yes"} */
//都是输出:小明
System.out.println(jsonobj0.get("name"));
System.out.println(jsonobj1.get("name"));
JSONArray str_ = JSONArray.fromObject(jsonobj2.get("1002"));//字符串转数组
System.out.println(JSONObject.fromObject(str_.get(3)).get("name"));
//字符串再转对象
System.out.println(str_.get(3).equals(jsonobj0));//true
//内容相容,但一个是对象 一个是字符串 拥有的方法不同 //所有的先转成json对象-然后再转成map
HashMap<String, Object> data = new HashMap<String, Object>();
Iterator it = jsonobj0.keys();
// 遍历jsonObject数据,添加到Map对象
while (it.hasNext())
{
String key = (String)it.next();
String value = (String) jsonobj0.get(key);
data.put(key, value);
}
System.out.println(data);
//map {name=小明, age=10} /*所有的obj调用toString()方法转成字符串*/
// java中数据结构可以直接按名输出,也可以数据结构名.toString输出
字符串转数组
(精)字符串,map -> json对象->map(初学者必读)的更多相关文章
- Jquery遍历筛选数组的几种方法和遍历解析json对象|Map()方法详解
		
Jquery遍历筛选数组的几种方法和遍历解析json对象|Map()方法详解 一.Jquery遍历筛选数组 1.jquery grep()筛选遍历数组 $().ready( function(){ v ...
 - FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
		
fastJson对于json格式字符串的解析主要用到了一下三个类: JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换. JSONObject:fas ...
 - JAVA中如何将一个json形式的字符串转为json对象或对象列表
		
import java.util.*; import java.text.SimpleDateFormat; import org.json.JSONObject; import org.json.J ...
 - 做筛选遍历时遇到的json字符串、json对象、json数组 三者之间的转换问题
		
这个是后台对登录用户以及筛选条件的操作 @Override public List<SdSdPer> listResults(String sidx, String sord) { try ...
 - Json字符串和Json对象的简单总结
		
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率). ...
 - JavaScript操作JSON的方法总结,JSON字符串转换为JSON对象
		
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...
 - 【荐】使用eval()、new Function()将JSON字符串转换为JSON对象
		
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 第一种解析方式:使用eval函数来解析,并且使用j ...
 - JSON字符串与JSON对象的区别
		
Q:什么是"JSON字符串",什么是"JSON对象",两者的区别? a.JSON对象是直接可以使用JQuery操作的格式,如C#中可以用对象(类名)点出属性(方 ...
 - js 将json字符串转换为json对象的方法解析
		
推荐: var obj = eval('(' + str + ')'); var last=JSON.stringify(obj); //将JSON对象转化为string字符 例如: JSON字符串: ...
 
随机推荐
- [Java学习] Java包装类、拆箱和装箱详解
			
虽然 Java 语言是典型的面向对象编程语言,但其中的八种基本数据类型并不支持面向对象编程,基本类型的数据不具备“对象”的特性——不携带属性.没有方法可调用. 沿用它们只是为了迎合人类根深蒂固的习惯, ...
 - Illumina Sequence Identifiers 序列标识符 index详解
			
大家基本都知道什么是 FASTA 和 FastQ 格式了,但这是不够的. 我们还需要了解世界上最大的测序公司自己定制的 FastQ 格式,因为你可能会经常用到,有时还会亲自去处理它们. 本文主题:Il ...
 - vs.net应用程序图标以及制作安装程序快捷方式图标设置
			
我们通常在开发软件完毕后需要打包制作安装程序,这个时侯一般都会需要设置应用程序的图标,使用默认的图标一般都比较难看,那么我们应该怎样设置自定义的图标呢? 我现在要讲的图标设置有两种情况, ...
 - Android设计模式之单例模式
			
定义 单例模式是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类.通过单例模式可以保证系统中一个类只有一个实例 . 单例模式是设计模式中最简单的形式之一.这一模式的目的是使得类的一 ...
 - Spring Boot 介绍
			
Spring Boot 能够让你更加容易创建一个独立启动,产品化的,并且是基于 Spring 的应用程序.我们为 Spring 平台及第三方库提供开箱即用的设置,这样你就可以有条不紊的开始开发,减少在 ...
 - 每天一个linux命令(3):pwd
			
Linux中用 pwd 命令来查看”当前工作目录“的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置. ...
 - How to create VO s and VLs dynamically in OAF
			
I have to create 2 VO objects dynamicaly and created 2 VL's dynamically .I have a static HGrid.and i ...
 - java.lang.Exception: Socket bind failed: [730048]
			
严重: Error initializing endpoint java.lang.Exception: Socket bind failed: [730048] ?????????×???(Э?é/ ...
 - 流媒体传输协议详解之---RTSP认证
			
from:http://blog.csdn.net/machh/article/details/52121648 Rtsp认证主要分为两种: 基本认证(basic authentication)和 ...
 - PHP:第一章——PHP中的算术运算符/递增、递减运算符/赋值运算符
			
算术运算符 //$a=10; $b=5; //取反: //echo -$a;//输出:-10: //加法: //echo $a+$b;//输出:15 //减法: //echo $a-$b;//输出:5 ...