Json的常用方法[通俗易懂]

Json的常用方法[通俗易懂]Json的常用方法

大家好,又见面了,我是你们的朋友全栈君。

Java中的json

在java中要想方便的操作json首先要引入json的jar包,如json-lib-2.4-jdk15.jar

下面是一些常用的方法:

Map<String,String> map1 = new HashMap<String,String>();
map1.put("username","liuwei");
map1.put("psw", "123");
//Map转换为json对象
//方法一:转换为带有key值的json对象
JSONObject json0 = new JSONObject();
json0.put("mapJson=", map1);
System.out.println("json0="+json0);
//方法二:转化为不带有key值的json对象
JSONObject json1 = JSONObject.fromObject(map1);
//Map对象转化为json数组
JSONArray mapArr = JSONArray.fromObject(map1);

ListMap转化为json对象

//方法一:转化为没有key值的json对象
List<Map<String,String>> listMap = new ArrayList<Map<String,String>>();
Map<String,String> map2 = new HashMap<String,String>();
map2.put("username", "zhangsan");
map2.put("psw", "46732");
listMap.add(map1);
listMap.add(map2);
JSONArray jsonArray = JSONArray.fromObject(listMap);

//f方法二:转化为带有key值的json对象
JSONObject json5 = new JSONObject();
json5.put("1", listMap);

json数组转化为带有key值的json对象

JSONObject jsonobj2 = new JSONObject();
jsonobj2.put("newuser", jsonArray);
jsonobj2.put("otheruser", jsonArray2);

json对象转换为json字符串

String jsonstr =  jsonobj2.toString();

json字符串转换为json对象

JSONObject jsonObj = JSONObject.fromObject(jsonstr);

获取json对象的key获取属性值,并可以转化为map

Map<String,String> map = new HashMap<String,String>();
map.put("username", jsonObjOne.getString("username"));
map.put("psw", jsonObjOne.getString("psw"));

json数组转化为ListMap

List<Map<String,String>> list4 = new ArrayList<Map<String,String>>();
for(int i = 0;i < jsonArr2.size();i++){
JSONObject jsonObjOne = jsonArr2.getJSONObject(i);
Map<String,String> map = new HashMap<String,String>();
map.put("username", jsonObjOne.getString("username"));
map.put("psw", jsonObjOne.getString("psw"));
list4.add(map);

Js中的json

           /**
			 *JSON.parse  字符串转成对象
			 * 参数1:字符串
			 * 参数2:执行函数,有返回值
			 * @type {string}
			 */
			var parseTest = function() {
				var data = '{"data":[],"parmas":{}}';
				return JSON.parse(data, function(key, val) {
					return val;
				});
			};
			console.log(parseTest());
			/**
			 * JSON.stringify 对象转换为字符串。
			 * 参数1:js对象
			 * 参数2:执行函数,有返回值
			 * 参数3:文本添加缩进、空格和换行符,如果参数是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果参数大于10,则文本缩进10个空格。参数可以使用非数字,如:\t
			 */
			var stringifyTest = function() {
				var data = {
					"data": [1],
					"parmas": {
						"key": 1
					}
				};
				return JSON.stringify(data, function(key, val) {
					return val;
				}, 1);
			};
			console.log(stringifyTest());

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106626.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java取余运算[通俗易懂]

    Java取余运算[通俗易懂]inta=6;~a=?Java中运算都是以补码进行计算的,6的原码为00000000000000000000000000000110,正数的补码=反码=原码所以补码也是00000000000000000000000000000110,然后进行取反操作变成了11111111111111111111111111111001,…

    2022年5月9日
    56
  • bool函数

    bool函数bool函数:(非原创)BOOL是布尔型变量,也就是逻辑型变量的定义符,类似于float、double等,只不过float定义浮点型,double定义双精度浮点型。在objective-c中提供了相似的类型BOOL,它具有YES值和NO值。布尔型变量的值只有真(true)和假(false),可用于逻辑表达式,也就是“或”“与”“非”之类的逻辑运算和大于小于之类的关系运算,逻辑表达式运算结果为真…

    2022年6月14日
    37
  • Linux查看系统版本和内核版本[通俗易懂]

    Linux查看系统版本和内核版本[通俗易懂]1.查看Linux系统版本cat/etc/issue或者cat/etc/redhat-release示例:[root@localhostgrafana]#cat/etc/issueCentOSrelease6.5(Final)Kernel\ronan\m2.查看Linu

    2022年10月9日
    0
  • 用matlab绘制线性分段函数图像[通俗易懂]

    用matlab绘制线性分段函数图像[通俗易懂]假设线性分段函数如下所示在matlab中建立m文件:输入以下代码:x=0:0.01:5;y=zeros(size(x));fori=1:length(x)ifx(i)<0.9y(i)=0;elseifx(i)>=0.9&&x(i)<4.34y(i)=29.0698.*x(i)-26.1628;elsey(i)=100;endend

    2022年5月20日
    54
  • IE重新装ActiveX控件[通俗易懂]

    IE重新装ActiveX控件[通俗易懂]项目因版本升级,需要重新安装一次已经装过的ActiveX控件,安装步骤如下: IE–&gt;右键属性–》程序–》管理加载项–&gt;IE已经使用的加载项–》找到原来安装的控件–》更新ActiveX(需要事先讲新控件放到相关文件夹)。 推荐使用:IE安装好的ActiveX控件存放在C:\WINDOWS\DownloadedProgramFiles,先删除…

    2022年5月14日
    43
  • Ext.apply 学习[通俗易懂]

    Ext.apply 学习[通俗易懂]一:ext.apply用来把参数拷贝到对象中,先看ext.apply源代码: Ext.apply=function(o,c,defaults){//no"this"referenceforfriendlyoutofscopecallsif(defaults){Ext.apply(o,defaults);}…

    2022年7月28日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号