当前位置: 首页 > 面试题库 >

如何维护JSONObject的顺序

古凌
2023-03-14
问题内容

我正在使用JSONObject来删除JSON字符串中不需要的certin属性:

JSONObject jsonObject = new JSONObject(jsonString);
jsonObject.remove("owner");
jsonString = jsonObject.toString();

它可以正常工作,但是问题是JSONObject是“名称/值对的无序集合”,我想保持String在通过JSONObject操作之前的原始顺序。

任何想法如何做到这一点?


问题答案:

你不能

这就是为什么我们称其 为名称/值对的无序集合

我不确定为什么需要这样做。但是,如果要订购,则必须使用json数组。



 类似资料:
  • 我有一个从各种文件加载时间序列数据的应用程序。应用程序为每个文件打开一个线程以并行加载数据。文件中的记录是有序的,但我需要向应用程序的其余部分提供一个提要,以维护事件的整体顺序。 这是否可以使用像多个生产者一样的破坏者——一种消费者类型的设计来实现,以维持事件的顺序? 我目前正在使用阻塞集合和排序列表对每个阻塞集合的头部进行排序,但这会消耗大量内存,我想看看是否有其他人使用不同的体系结构实现了类似

  • 问题内容: 这是我的pojo,注为实体 等等...... 上面的实体是使用注释创建的,当我查看mysql数据库时,没有按顺序创建列,而是在下面编写的,相反,第一列是book_id,然后是book_desc,然后是book_athor,然后是book_short_desc,然后是book_name。 我的问题是如何告诉hibernate以与我在Java代码中编写的顺序相同的顺序创建列? 有没有任何注

  • 问题内容: 我有下表 然后我尝试根据主键获取记录 然后我得到以下结果 可以看到,结果按ID排序。我试图实现的结果是按照查询中提供的顺序对结果进行排序。给定这个例子,它应该返回 问题答案: 正如另一个答案所提到的:您发布的查询与您想要的结果顺序无关,而只是您想要的结果。 为了订购您的结果,我将使用ORDER BY FIELD(): FIELD的参数列表可以是可变长度。

  • 我有一个包含病人姓名和紧急级别的类,实现了可比较的: **假设这是我的输入文件: *3=查询数,0=要添加到arraylist中的新患者,1=更新紧急级别(示例30+30=60)。2=按降序和名称打印紧急级别。** 然而,我的程序成功地扫描并向arraylist中添加了新的病人,但每当需要更新紧急级别时,序列都是错误的。 例如,在david紧急级别更新之前,序列是(david 60,david 3

  • 目前,我正在测试一个具有CRUD操作的类(例如)。按照后面使用的方法,我想按照创建、读取、更新和删除的顺序测试所有操作。 由于JUnit中测试用例的执行顺序依赖于JVM,所以我需要一些适当的方法来确保单元测试用例按照给定的顺序执行。 到目前为止,我提出了以下策略: > 在JUnit4中使用按名称的升序执行方法。然而,这需要重命名测试用例,而且对我来说似乎不是最好的方法,因为在未来需要添加更多的测试