废话不多说,先给大家贴代码,具体代码如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import net.sf.json.JSONArray; import net.sf.json.JSONObject; import java.util.*; public static void main(String[] args){ JSONObject obj= new JSONObject(); obj.put( "derek" , "23" ); obj.put( "dad" , "49" ); obj.put( "mom" , "45" ); System.out.println( "通过构造器的方式创建的JSONObject对象:" +obj); Map<string,string> map= new LinkedHashMap<>(); map.put( "derek" , "23" ); map.put( "dad" , "49" ); map.put( "mom" , "45" ); System.out.println( "通过fromObject方法将map对象转换为JSONObject对象:" +JSONObject.fromObject(map)); JSONArray arr= new JSONArray(); arr.add( 0 , "derek" ); arr.add( 1 , "dad" ); arr.add( 2 , "mom" ); System.out.println( "通过构造器的方式创建的JSONArray:" +arr); ArrayList list= new ArrayList<>(); list.add( "derek" ); list.add( "dad" ); list.add( "mom" ); System.out.println( "通过fromObject方法将Arraylist对象转换为JSONArray对象:" +JSONArray.fromObject(list)); System.out.println( "将HashMap对象通过fromObject方法转换为JSONArray对象" +JSONArray.fromObject(map)); String str= "{\"derek\":23,\"dad\":49,\"mom\":45}" ; System.out.println( "解析之后的JSON对象:" +JSONObject.fromObject(str)); //遍历输出 Iterator it=obj.keys(); while (it.hasNext()){ String key=it.next(); System.out.println(key+ ":" +obj.get(key)); } } } |
运行结果如下:
通过构造器的方式创建的JSONObject对象:{"derek":"23","dad":"49","mom":"45"}
通过fromObject方法将map对象转换为JSONObject对象:{"derek":"23","dad":"49","mom":"45"}
通过构造器的方式创建的JSONArray:["derek","dad","mom"]
通过fromObject方法将Arraylist对象转换为JSONArray对象:["derek","dad","mom"]
将HashMap对象通过fromObject方法转换为JSONArray对象[{"derek":"23","dad":"49","mom":"45"}]
解析之后的JSON对象:{"derek":23,"dad":49,"mom":45}
derek:23
dad:49
mom:45
Java List是个集合接口,只要是集合类接口都会有个“迭代子”( Iterator ),利用这个迭代子,就可以对list内存的一组对象进行操作。 所有要想操作这个list内存的东西,就首先要得到此迭代子的实例:Iterator it=l.iterator();
用add()方法即可添加新的成员对象,他可以添加的仅仅只能为对象,不能添加基本数据类型,容器还对应get(),remove()方法来获取和删除数据成员
实例1.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import java.util.*; public class ArrayListTest{ public static void main(String dd[]){ //new了一个存储list List l= new ArrayList(); //因为Collection framework只能存储对象所以new封装类 l.add( new Integer( 1 )); l.add( new Integer( 2 )); l.add( new Integer( 3 )); l.add( new Integer( 4 )); Iterator it=l.iterator(); //hasNext是取值取的是当前值.他的运算过程是判断下个是否有值如果有继续. while (it.hasNext()){ //设it.next封装类,调用Integer的intValue方法返回值为int赋给i; int i=((Integer)it.next()).intValue(); System.out.println( "Element in list is : " +i);}}} |
ArrayList list = new ArrayList() 和List<String> list = new ArrayList<String>() 的区别??
1、存储内容的区别
ArrayList 可以存储任何类型的项
List<类型> 只可以存储指定类型的项
2、使用是否方便
List<>比ArrayList使用方便
因为在使用ArrayList内部的值时,必须强制转换才行
相信使用过ArrayList的都深有体会,因为存放在ArrayList里的值都转换成了Object类型
3、出现的时间
ArrayList比List<>出现的时间早
List<>是C#2.0时出现的,且是其最强大的功能之一
4、所在命名空间的区别
ArrayList的命名空间是System.Collections
List<>的命名空间是System.Collections.Generic
其中Generic是泛型的意思,使用List<>也就是在使用泛型技术
5、编程中的使用频率
大多数情况下 ArrayList可以废弃不用,毕竟其是C#2.0之前的技术了
这一点从在Visual Studio中 新建一个类时便可以看出
新建一个类时,其默认使用的命名空间有
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
显然没有System.Collections,因为ArrayList的使用的确不方便
以上内容是小编给大家介绍的Java中JSONObject和JSONArray使用知识,希望对大家有所帮助,有任何问题欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对服务器之家网站的支持!