String转成Json数组 JsonArray 保持有序

String转成Json数组 JsonArray 保持有序接收上传的数据转成Json,希望数据保持原来的顺序,fastjson处理JsonArray会把顺序hash,可以使用Gson来转成Json,避免顺序改变。importcom.google.gson.JsonArray;importcom.google.gson.JsonParser;/***createbyLiuJinHe2019/9/20*/pu…

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

接收上传的数据转成 Json ,希望数据保持原来的顺序,fastjson 处理JsonArray会把顺序 hash,可以使用 Gson 来转成Json,避免顺序改变。

import com.google.gson.JsonArray;
import com.google.gson.JsonParser;

/**
 * create by LiuJinHe 2019/9/20
 */
public class TestJsonArray {
    public static void main(String[] args) {
        // [{},{},{}...]
        String str = "[{\"cp_game_id\":633,\"category\":\"cp_api\",\"event\":{\"event_time\":\"1568874600000\",\"event_name\":\"role_rank\"},\"data\":{\"GAME_SERVER\":\"30231\",\"ROLE_ID\":\"5D831F65831B7617\",\"ROLE_NAME\":\"[30231区]白寻巧\",\"ROLE\":\"\",\"SCHOOL\":\"\",\"COMBAT\":0,\"ROLE_VIP\":0,\"BEFORE_RANK\":39,\"ROLE_RANK\":40}},{\"cp_game_id\":633,\"category\":\"cp_api\",\"event\":{\"event_time\":\"1568874600000\",\"event_name\":\"role_rank\"},\"data\":{\"GAME_SERVER\":\"30231\",\"ROLE_ID\":\"5D831F65831B7617\",\"ROLE_NAME\":\"[30231区]白寻巧\",\"ROLE\":\"\",\"SCHOOL\":\"\",\"COMBAT\":0,\"ROLE_VIP\":0,\"BEFORE_RANK\":39,\"ROLE_RANK\":40}}]";

        JsonParser parser = new JsonParser();
        JsonArray jsonArray = parser.parse(str).getAsJsonArray();
        jsonArray.iterator().forEachRemaining(System.out::println);
    }
}

 

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

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

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


相关推荐

  • 链式前向星与邻接表对比

    链式前向星与邻接表对比本文图片及数据对于这样一张有向图 输入边的顺序如下 545 对于邻接表来说是这样的 1 2 3 52 33 44 1 55 对于链式前向星来说是这样的 edge 0 to 2 edge 0 next 1 head 1 0

    2025年11月19日
    3
  • GoLang入门1-安装-配置

    GoLang入门1-安装-配置Go的三种安装方式Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式:Go源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码安装是最方便而熟悉的。Go标准包安装:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合初学者,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了

    2022年6月25日
    32
  • matlab ga算法_基因算法和遗传算法

    matlab ga算法_基因算法和遗传算法遗传算法(GeneticAlgorithm,GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解(所找到的解是全局最优解)的方法。参数编码、初始群体的设定、适应度函数的设计、遗传操作设计、控制参数设定五个要素组成了遗传算法的核心内容。1)种群初始化。我们需要首先通过随机生成的方式来创造一个种群,一般该种群的数量为100…

    2025年8月12日
    4
  • navicat premium 15 mac 激活码-激活码分享

    (navicat premium 15 mac 激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月30日
    103
  • 感知机原理小结

    感知机原理小结  感知机由Rosenblatt于1957年提出,是神经网络和支持向量机的基础。这里先简单介绍一下什么是感知机。本篇博客为《统计学方法》第二章和博客《感知机原理小结》的总结。感知机模型  感知机是二分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,分别取+1+1+1和−1−1-1二值。感知机对应于输入空间(特征空间)中将实例划分为正负两类的分离超平面,属于判别模型。这还是很…

    2022年10月8日
    3
  • python微信推送{u‘errcode‘: 40008, u‘errmsg‘: u‘invalid message type rid: 6111061f-19703d5b[通俗易懂]

    python微信推送{u‘errcode‘: 40008, u‘errmsg‘: u‘invalid message type rid: 6111061f-19703d5b[通俗易懂]记录一下前两天自己搞的一个蠢事,当时是要做一个微信信息推送,我先是按照微信的接口文档和网上的一些例子把代码写好了,测试的时候一直报这个40008,看微信接口文档又是说消息类型不对,大概就是说你给的data跟你定义的模板格式不对但是我都对了好几次,发现没问题,后面检查了一下接口的链接,发现跟接口文档里的不一样,应该是在复制别人的时候复制错了,换成文档里的链接后就正常了。所以,以后遇到这种{u’errcode’:40008,u’errmsg’:u’invalidmessagetyperid:

    2022年6月10日
    67

发表回复

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

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