gpt4 book ai didi

java - JSONArray 中元素的顺序

转载 作者:行者123 更新时间:2023-12-01 19:33:27 27 4
gpt4 key购买 nike

我正在使用 org.json.simple 在 Java 中解析 JSON 文件。我有一个如下所示的 JSON 文件:

{
"cells": [
{
"key" : "val1"
},
{
"key" : "val2"
},
{
"key" : "val3"
}
]
}

如果它存储在名为 path 的文件中,并且我像这样获取cells:

Reader reader = new FileReader("path");
JSONObject obj = (JSONObject)new JSONParser().parse(reader);
JSONArray cells = (JSONArray) obj.get("cells");

我可以假设 JSONArray cells 中的元素存储顺序与文件中的顺序相同(即 cells 中的第一个元素包含值 val1,第二个元素包含 val2,最后一个元素包含 val3)?

最佳答案

由于 JSONArray 是“值的有序序列”(如 docs 中所示),您可以假设数组元素的顺序与从实际 JSON 文件中读取的顺序相同。所以只要你的JSON文件不改变,读取的数组就不会改变。

但如果可能的话,我建议不要让您的代码依赖于文件定义的排序。我认为这是不好的做法。
如果确实需要定义排序,您可以使用 JSON 文件中使用的键在代码中定义所需的排序。例如,定义一个数组 ['key3', 'key2', 'key1'] 并通过搜索这些键并创建一个新列表来从读取的 JSONArray 中提取值。

关于java - JSONArray 中元素的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58708717/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com