String字符串转换成JsonArray的两种方法,以及JSONArray解析为List的方法

2023-11-13

1、首先引入相关的jar包(gson、JSONObject、JSONArray)

点我下载

2、编写代码

public class Test {

	public static void main(String[] args) {
        //String转换成JSONArray
		String test="[{\"name\":\"john\",\"age\":\"22\",\"className\":\"mca\"},{\"name\":\"zhang\",\"age\":\"23\",\"className\":\"nima\"}]";
		JsonParser parser = new JsonParser();
		JsonElement tradeElement = parser.parse(test);
		JsonArray jsonArray = tradeElement.getAsJsonArray();
		JSONArray jsonArray1 = JSONArray.fromObject(test);
		System.out.println("data="+jsonArray);
		System.out.println("data="+jsonArray1);

        //JSONArray转换成List<Map>
		Iterator it = jsonArray1.iterator();
		List<Map> result = new ArrayList<Map>();
		while(it.hasNext()) {
			//将每一个jsonArray转换成字符串
			String ja = it.next().toString();
			//将每一个字符串转换为JSONObject
			JSONObject jo = JSONObject.fromObject(ja);
			Map map = jo;
			result.add(map);
		}
		
		//将得到的list遍历出来
		it = result.iterator();
		while(it.hasNext()) {
			Map m = (Map)it.next();
			System.out.println(m.get("name"));
		}

	}

}

3、查看控制台输出结果

4、引用场景

  在移动应用开发中 ,前端和后端之间交流的数据格式通常是使用json字符串,有时前端需要提供json数组给后端,而后端收到的json数组仅仅是字符串格式,并不是真正的JsonArray对象,需要将字符串对象解析成真正的JsonArray对象则需要用到上述方法。

同样,在移动端难免会收到服务器端提供的JsonArray字符串,移动端也需要将JsonArray字符串解析成List<Map>后才可以通过操作集合中的map来获取相应的键-值对数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

String字符串转换成JsonArray的两种方法,以及JSONArray解析为List的方法 的相关文章

随机推荐

  • Android12 ---- Material You 应用

    背景 Google android S 新特性 当你更换壁纸 整个手机主题的颜色会根据壁纸的配色方案而改变 也就说 每当你更新壁纸 你的手机界面也会焕然一新 当用户在 Android 12 设备上更改壁纸时 系统会分析图像以选择一种颜色 并
  • Xcode 4 常用快捷键(和 Xcode 3 有些不一样了)

    Xcode 4 常用快捷键 和 Xcode 3 有些不一样了 2011 06 16 Unmi 把 Xcode 由 3 2 5 升级到 Xcode 4 0 2 之后 满以为快捷键总该不会变化太大吧 没想又要经历一个快捷键的适应过程 发现有些在
  • 思维能力的学习

    前言 在工作中 随着工作时间的增长 我们与他人的差异不是知识本身的差异 主要是思维方面的差异 所以我们需要培养自己的思维能力 思维能力的学习 思维是一个具备内在框架和逻辑的系统工程 思维覆盖了学习 认知 问题解决和复盘以及知识库多维度的内容
  • 华为出品Python入门教程:从零基础入门到精通,这一篇就够了

    前言 本文罗列了了python零基础入门到精通的详细教程 内容均以知识目录的形式展开 01 python由来与发展介绍 02 项目开发流程 第一章 markdown编辑器 01 markdown基本语法 02 Typora简介与安装 03
  • 在QT中使用日志系统

    当写好的软件发布出去后 用户遇到死机或一些其他的bug 我们该怎么追踪这些问题呢 这时候日志系统很好的帮助了我们 最近也是参照网络大牛的博客代码实现了log 下面看看代码吧 void outputMessage QtMsgType type
  • 爬虫篇(2.2)使用scrapy-jsonrpc简单教程

    首先安装scrapy jsonrpc pip install scrapy jsonrpc 打开你的爬虫项目中setting py文件 加入如下代码进行配置 EXTENSIONS scrapy jsonrpc webservice WebS
  • 网络编程5之poll、epoll、超时检测

    1 poll机制 poll的实现和select非常相似 只是文件描述符fd集合的方式不同 poll使用struct pollfd结构而不是select的fd set结构 其他的都差不多 include
  • R手册(Common)--data.table

    R语言data table包是自带包data frame的升级版 用于数据框格式数据的处理 最大的特点快 包括两个方面 一方面是写的快 代码简洁 只要一行命令就可以完成诸多任务 另一方面是处理快 内部处理的步骤进行了程序上的优化 使用多线程
  • wireshark只保存显示过滤器筛选的部分报文的方法

    有几种方法 1 先用filter进行过滤 然后File Save As Packet Range里面选择Displayed 然后保存 2 如果想保存从第2001个到第3000个这1000个包 可以在2001个包上点右键选择Mark Pack
  • 前端架构的艺术:解决问题、优化体验和提升效率

    引言 在当今的互联网时代 前端开发的重要性日益凸显 前端架构 作为前端开发的核心 关乎着产品的用户体验 性能和可维护性 本文将带你探讨前端架构的重要性和应用场景 分析各种前端架构的优缺点 并展示一个实际的前端架构解决方案 通过本文 你将获得
  • 【多模态】9、GLIP

    文章目录 一 背景 二 方法 2 1 将 object detection 和 phrase grounding 进行统一 2 2 Language aware deep fusion 2 3 使用语义丰富的数据来进行预训练 三 效果 3
  • (附源码)计算机毕业设计ssm高校网上报销系统

    项目运行 环境配置 Jdk1 8 Tomcat7 0 Mysql HBuilderX Webstorm也行 Eclispe IntelliJ IDEA Eclispe MyEclispe Sts都支持 项目技术 SSM mybatis Ma
  • Spring的几种注入bean的方式

    在Spring容器中为一个bean配置依赖注入有三种方式 使用属性的setter方法注入 这是最常用的方式 使用构造器注入 使用Filed注入 用于注解方式 使用属性的setter方法注入 首先要配置被注入的bean 在该bean对应的类中
  • C++下的protobuf简单使用

    Google Protocol Buffer API简单使用总结 大致步骤如下 1 编写 msg proto 文件 package lm 我理解成命名空间 message helloworld 我理解成类 required int32 id
  • LVGL8学习之row and a column layout with flexbox

    这一篇来学习一下基于flexbox 柔性盒子 简单行和列布局 还是通过codeblock来模拟代码的运行 可设置layout对象内部的水平和竖直填充 以及布局内各item之间的间隔填充 代码如下 void lv flex layout te
  • 用python实现串口通信编程

    实现串口通信编程 需要使用到第三方库 pyserial 下面是一个简单的示例代码 import serial ser serial Serial COM3 9600 while True data ser readline decode p
  • Bootstrap Metronic 学习记录(一)简介

    1 简介 是一个基于Bootstrap 3 x的高级管理控制面板主题 Bootstrap Metronic 是一个完全响应式管理模板 基于Bootstrap3框架 高度可定制的 易于使用 适合从小型移动设备到大型台式机很多的屏幕分辨率 包含
  • Kafka : kafka重启报错 ZkClient allready closed

    1 美图 2 背景 kafka突然发现 有问题了 然后重启 却发现报错 但是zk是好的
  • 量化:年化收益、期初收益、期末收益、年份,任意3个值计算剩下的1个值

    1 网页计算器可以参考 新浪财经投资收益计算器 http finance sina com cn money 283 2005 0708 19 html 计算方法 由图可知 F V 1 r
  • String字符串转换成JsonArray的两种方法,以及JSONArray解析为List的方法

    1 首先引入相关的jar包 gson JSONObject JSONArray 点我下载 2 编写代码 public class Test public static void main String args String转换成JSONA