色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java json 順序輸出

呂致盈1年前8瀏覽0評論

在Java中,JSON是一種重要的數據交換格式。JSON的特點之一就是可以嵌套和包含,而且存儲數據的順序是可以改變的。

但是,有的時候我們希望輸出JSON的時候能夠保持一定的順序,這需要借助一些工具庫來實現。

// 假設我們有一個包含多個屬性的JSON對象
String jsonStr = "{\n" +
"  \"name\": \"Tom\",\n" +
"  \"age\": 23,\n" +
"  \"address\": {\n" +
"    \"province\": \"Guangdong\",\n" +
"    \"city\": \"Shenzhen\",\n" +
"    \"street\": \"Huaqiang Road\"\n" +
"  }\n" +
"}";
// 使用Jackson庫來解析JSON
ObjectMapper objectMapper = new ObjectMapper();
JsonNode jsonNode = objectMapper.readTree(jsonStr);
// 使用TreeMap來保存屬性順序,key為屬性名,value為屬性值
MaporderedMap = new TreeMap<>();
jsonNode.fields().forEachRemaining(entry ->orderedMap.put(entry.getKey(), entry.getValue()));
// 將有序map轉換為JSON格式
String orderedJsonStr = objectMapper.writeValueAsString(orderedMap);
System.out.println(orderedJsonStr);

在上面的代碼中,我們使用了Java中的Jackson庫來解析JSON字符串,并使用TreeMap來保存屬性的順序。然后,我們將有序map轉換為JSON字符串,最終得到的輸出結果是:

{"address":{"city":"Shenzhen","province":"Guangdong","street":"Huaqiang Road"},"age":23,"name":"Tom"}

可以看到,JSON的屬性順序已經被我們控制了。這個方法同樣適用于嵌套的JSON對象。