JSONObject与JSONArray的使用

1.JAR包简介

要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:

1.commons-lang.jar

2.commons-beanutils.jar

3.commons-collections.jar

4.commons-logging.jar

5.ezmorph.jar

6.json-lib-2.2.2-jdk15.jar

2.JSONObject对象使用

JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。

2.1.实例1

package jsontest;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class JSONObjectSample {

// 创建JSONObject对象

private static JSONObject createJSONObject() {

JSONObject jsonObject = new JSONObject();

jsonObject.put("username", "huangwuyi");

jsonObject.put("sex", "男");

jsonObject.put("QQ", "413425430");

jsonObject.put("Min.score", new Integer(99));

jsonObject.put("nickname", "梦中心境");

return jsonObject;

}

public static void main(String[] args) {

JSONObject jsonObject = JSONObjectSample.createJSONObject();//静待方法,直接通过类名+方法调用

// 输出jsonobject对象

System.out.println("jsonObject:" + jsonObject);

// 判读输出对象的类型

boolean isArray = jsonObject.isArray();

boolean isEmpty = jsonObject.isEmpty();

boolean isNullObject = jsonObject.isNullObject();

System.out.println("是否为数组:" + isArray + ",

是否为空:" + isEmpty

+ ", isNullObject:" + isNullObject);

// 添加属性,在jsonObject后面追加元素。

jsonObject.element("address", "福建省厦门市");

System.out.println("添加属性后的对象:" + jsonObject);

// 返回一个JSONArray对象

JSONArray jsonArray = new JSONArray();

jsonArray.add(0, "this is a jsonArray value");

jsonArray.add(1, "another jsonArray value");

jsonObject.element("jsonArray", jsonArray);

//在jsonObject后面住家一个jsonArray

JSONArray array = jsonObject.getJSONArray("jsonArray");

System.out.println(jsonObject);

System.out.println("返回一个JSONArray对象:" + array);

// 添加JSONArray后的值

// {"username":"huangwuyi","sex":"男","QQ":"413425430","Min.score":99,"nickname":"梦中心境","address":"福建省厦门市","jsonArray":["this is a jsonArray value","another jsonArray value"]}

System.out.println("结果=" + jsonObject);

// 根据key返回一个字符串

String username = jsonObject.getString("username");

System.out.println("username==>" + username);

// 把字符转换为 JSONObject

String temp = jsonObject.toString();

JSONObject object = JSONObject.fromObject(temp);

// 转换后根据Key返回值

System.out.println("qq=" + object.get("QQ"));

}}

输出结果

jsonObject:{"username":"huangwuyi","sex":"男","QQ":"413425430","Min.score":99,"nickname":"梦中心境"}

是否为数组:false,

是否为空:false,

isNullObject:false添加属性后的对象:

{"username":"huangwuyi",

"sex":"男",

"QQ":"413425430",

"Min.score":99,"nickname":"梦中心境",

"address":"福建省厦门市"}

{"username":"huangwuyi","sex":"男","QQ":"413425430","Min.score":99,"nickname":"梦中心境",

"address":"福建省厦门市","jsonArray":["this is a jsonArray value","another jsonArray value"]}

返回一个JSONArray对象:["this is a jsonArray value","another jsonArray value"]

结果={"username":"huangwuyi","sex":"男",

"QQ":"413425430","Min.score":99,"nickname":"梦中心境","address":"福建省厦门市",

"jsonArray":["this is a jsonArray value",

"another jsonArray value"]}username==>huangwuyiqq=413425430

2.2.实例2.

package jsontest;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class JSONTest {

public static void main(String args[])

{

JSONObject jsonObj0 = new JSONObject();

JSONObject jsonObj = new JSONObject();

JSONObject jsonObj2 = new JSONObject();

JSONObject jsonObj3 = new JSONObject();

JSONArray jsonArray = new JSONArray();

//创建jsonObj0

jsonObj0.put("name0", "zhangsan");

jsonObj0.put("sex1", "female");

System.out.println("jsonObj0:"+jsonObj0);

//创建jsonObj1 jsonObj.put("name", "xuwei");

jsonObj.put("sex", "male");

System.out.println("jsonObj:"+jsonObj);

//创建jsonObj2,包含两个条目,条目内容分别为jsonObj0,jsonObj1

jsonObj2.put("item0", jsonObj0);

jsonObj2.put("item1", jsonObj);

System.out.println("jsonObj2:"+jsonObj2);

//创建jsonObj3,只有一个条目,内容为jsonObj2

jsonObj3.element("j3", jsonObj2);

System.out.println("jsonObj3:"+jsonObj3);

//往JSONArray中添加JSONObject对象。发现JSONArray跟JSONObject的区别就是JSONArray比JSONObject多中括号[]

jsonArray.add(jsonObj);

System.out.println("jsonArray:"+jsonArray);

JSONObject jsonObj4 = new JSONObject();

jsonObj4.element("weather", jsonArray);

System.out.println("jsonObj4:"+jsonObj4);

}}

输出结果:

jsonObj0:{"name0":"zhangsan","sex1":"female"

}jsonObj:{"name":"xuwei","sex":"male"}jsonObj2:

{"item0":{"name0":"zhangsan","sex1":"female"},

"item1":

{"name":"xuwei","sex":"male"}}jsonObj3:{"j3":

{"item0":{"name0":"zhangsan","sex1":"female"}

,"item1":{"name":"xuwei","sex":"male"}}}

jsonArray:[{"name":"xuwei","sex":"male"}]

jsonObj4:{"weather":

[{"name":"xuwei","sex":"male"}]}

以上所述是小编给大家介绍的JSONObject与JSONArray的使用知识,希望对大家有所帮助,如果大家想了解更多内容敬请关注phpstudy网站!相关阅读:

Linux sleep命令使用参数

MoveWindow() SetWindowPos()的区别于联系

centos系统安装man中文手册manpages-zh

完善CodeIgniter在IDE中代码提示功能的方法

jQuery实现瀑布流布局

消除Win7中PNG图像文件的缩略图出现的阴影的方法

C++模板之特化与偏特化详解

php内核解析:PHP中的哈希表

Win10重大更新Redstone正式版已知更新汇总(保持更新中)

jquery设置text的值示例(设置文本框 DIV 表单值)

jQuery插件StickUp实现网页导航置顶

Win10共享Charm按钮具体步骤

file_get_contents("php://input", "r")实例介绍

js实现仿QQ秀换装效果的方法

java jsonobject的包_java_JSONObject与JSONArray的使用,1.JAR包简介要使程序可以运 - phpStudy...相关推荐

  1. Java如何读取JAR包外的properties文件及打成jar包后无法读取到jar包内的properties文件

    项目中,经常把一部分功能独立出来,做一个java  project,然后打成jar包供其他项目引用.这时候,如果jar包中需要读取配置文件信息,则很少把该配置打进jar包,因为它不方便修改,更多都是采 ...

  2. java spring包_java 自定义加载器,加载spring包,动态加载实现,jar包隔离,tomcat加载webapp方式...

    java 自定义加载器,加载spring包,动态加载实现,jar包隔离,tomcat加载webapp方式 发布时间:2018-08-20 12:02, 浏览次数:774 , 标签: java spri ...

  3. Java通过JNI调用C++动态链接库dll,并打在jar包内 ——JNA-JNI(一)

    Java通过JNI调用C++动态链接库dll,并打在jar包内--JNA-JNI(一) 系列文章: Java通过JNI调用C++动态链接库dll,并打在jar包内 --JNA-JNI(一) Java使 ...

  4. java service包_利用 javaService 发布服务(jar包)

    jar在java中作为一种项目的发布形式比较普遍,往往为了容易管理更需要作为一种系统服务发布--起码服务器重启了不用人工去重新打开你所以往运行的jar文件. 这里简单的介绍下怎么将jar发布到winN ...

  5. 将jar包部署在docker上,将jar包打成镜像,使用docker部署jar包

    假设你已经准备好以下东西,即可进行服务部署 一台安装好docker的linux服务器(安装docker见安装docker) 准备好的jar包 接下来开始吧! 将jar包上传至服务器(建好文件夹存放以方 ...

  6. IDEA 构建为了打 jar 包的工程,包含 maven 打 jar 包的过程

    前言:最近自己写了一个单表查询的组件,包含前端.后台,所以需要向阿里的 druid 一样将所有文件打到一个 jar 包里,这里首先记录如何打 jar 包. 附:自己的一个 jar 包源码 https: ...

  7. 想要拥有自己的jar包吗?------超级简单的打jar包教程~~~

    嗨喽-小伙伴们,又有好久没更新了呜呜呜, 今天我们来聊聊jar包.作为程序员,日常工作就是打自己的jar包和学别人的jar包. 首先,我们来聊聊啥是jar包: 一. 什么是jar包? jar包, Ja ...

  8. AndroidStudio生成自定义的混淆jar包(同时将assets目录打入jar包)(二)(by 星空武哥)

    转载请标注原文地址:http://blog.csdn.net/lsyz0021/article/details/53107595 在以前曾经写过两篇文章,关于是生成jar包和引用jar的文章,建议先看 ...

  9. Nexus-在项目中使用Maven私服,Deploy到私服、上传第三方jar包、在项目中使用私服jar包

    场景 Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/ ...

最新文章

  1. windows10 mysql 5.5.36 安装
  2. 1.java注释的类型_HappyBKs教你写Java注解(1)——注解的分类、运行机制、作用域及概念汇总...
  3. define() vs const 该如何选择?
  4. php接入influxdb,[Linux]安装grafana并且添加influxdb监控
  5. Nuxt使用高德地图
  6. kylinH5框架之项目开发调试
  7. 使用SaxParser和完整代码进行XML解析
  8. Oracle笔记:备份还原
  9. Scrapy框架初探
  10. 2017 部门文化宣贯会议内容
  11. Swift 音乐播放demo
  12. QT visual assist x不能稳定工作
  13. html5canvas圆角矩形,html5 canvas 绘制圆角矩形
  14. Hazelcast IMDGJet详解
  15. 爱奇艺埋点投递治理实践
  16. 通过python调用OpenAI的API
  17. 学习Flask之blueprint
  18. 163邮箱自动化登录实现模块化【2】
  19. 报错集-------docker中删除镜像时报错
  20. workflow了解

热门文章

  1. MyEclipse 2014 GA Windows版下载地址
  2. BIMBase-Python参数化组件常见问题——脚本运行常见报错
  3. 使用Xamarin进行移动开发
  4. python制作字符画视频来啦~
  5. 商品归类查询服务_案例评析:机电商品中的小零件 | 归类不简单(上)
  6. 微信小程序聊天室表情
  7. QT学习笔记-Excel的导入导出
  8. mysql7和mysql8_MySQL5.7和MySQL8.0通用配置文件
  9. 自我学习总结之——NFV
  10. c语言中的奇数位,在C ++中计算整数中的偶数和奇数位