如何使用Java更改JSON对象的顺序?
我对JSON非常陌生,并尝试使用Java构建一个新的JSON请求文件。以下是我需要实现的目标如何使用Java更改JSON对象的顺序?,java,json,Java,Json,我对JSON非常陌生,并尝试使用Java构建一个新的JSON请求文件。以下是我需要实现的目标 { "ID": "9724234234", "Details": [ { "Name": "Donny", "EmpID": "B572345", "country": "India&
{
"ID": "9724234234",
"Details": [
{
"Name": "Donny",
"EmpID": "B572345",
"country": "India",
}
]
}
这是我的Java代码
public static void main(String[] args) {
JSONObject obb = new JSONObject();
obb.put("ID", "9724234234");
JSONArray jsonArray = new JSONArray();
obb.putAll(obb);
JSONObject obj = new JSONObject();
obj.put("Name", "Donny");
obj.put("EmpID", "B572345");
obj.put("Country", "India");
jsonArray.add(obj);
JSONObject obj1 = new JSONObject();
obj1.put("Details", jsonArray);
obb.putAll(obj1);
System.out.println(obb);
}
我得到的JSON是什么
{
"Details": [
{
"Country": "India",
"EmpID": "B572345",
"Name": "Donny"
}
],
"ID": "9724234234"
}
如您所见,我的ID在JSON中的位置不正确,我希望它出现在JSON的第一部分。我遗漏了什么吗?感谢您的帮助。干杯。您不能在JSON中指定键的顺序,这并不重要。任何出于某种原因试图依赖密钥顺序的代码都将失败。大多数标准的hashmap/键值对实现都是这样,在某些语言(如Go)中,顺序是故意随机的,以确保没有人试图依赖它。您不能在JSON中指定键的顺序,这并不重要。任何出于某种原因试图依赖密钥顺序的代码都将失败。大多数标准的hashmap/键值对实现都是这样,在某些语言(如Go)中,排序是故意随机的,以确保没有人试图依赖它。首先,Json元素的排序几乎不重要,它只能是令人眼花缭乱的,但请尝试一下
public static void main(String[] args) {
JSONObject obb = new JSONObject();
JSONArray jsonArray = new JSONArray();
JSONObject obj = new JSONObject();
obj.put("Name", "Donny");
obj.put("EmpID", "B572345");
obj.put("Country", "India");
jsonArray.add(obj);
obb.put("ID", "9724234234");
obb.putAll(obb);
JSONObject obj1 = new JSONObject();
obj1.put("Details", jsonArray);
obb.putAll(obj1);
System.out.println(obb);
}首先,Json元素的顺序几乎无关紧要,它只能让人赏心悦目,但也不能超过这一点,不过请尝试一下
public static void main(String[] args) {
JSONObject obb = new JSONObject();
JSONArray jsonArray = new JSONArray();
JSONObject obj = new JSONObject();
obj.put("Name", "Donny");
obj.put("EmpID", "B572345");
obj.put("Country", "India");
jsonArray.add(obj);
obb.put("ID", "9724234234");
obb.putAll(obb);
JSONObject obj1 = new JSONObject();
obj1.put("Details", jsonArray);
obb.putAll(obj1);
System.out.println(obb);
}您不能依赖JSON对象中元素的顺序。 JSON库可以根据需要自由地重新排列元素的顺序。这不是虫子
有关json的更多信息,请参见您不能依赖json对象中元素的顺序。 JSON库可以根据需要自由地重新排列元素的顺序。这不是虫子
有关json的更多信息,请在类级别使用@JsonPropertyOrder注释,并提供创建json的顺序。只有在使用jackson库进行JSON解析时,这才有助于您 例如
在类级别上使用@JsonPropertyOrder注释,并提供创建JSON的顺序。只有在使用jackson库进行JSON解析时,这才有助于您 例如
JSON对象是名称/值对的无序集合。您可能无法使用JSON库,但如果可以使用linkedhashmap和GSON库,则可能会得到所需的结果。JSON对象是名称/值对的无序集合。您可能无法使用JSON库,但如果可以使用linkedhashmap和GSON库然后您可能会得到所需的结果。将编辑或删除此答案以使此空间更干净,谢谢将编辑或删除此答案以使此空间更干净,谢谢