首頁 > Java > java教程 > 我們如何在Java中對JSONArray進行排序?

我們如何在Java中對JSONArray進行排序?

WBOY
發布: 2023-09-14 16:21:03
轉載
1486 人瀏覽過

我們如何在Java中對JSONArray進行排序?

JSON是廣泛使用的資料交換格式之一,並且是一種輕量級 >語言獨立JSONArray可以解析字串中的文字以產生向量-類似對象,並支援java.util.List 介面。

我們可以在下面的範例中對 JSONArray 進行排序

範例

import java.util.*;
import org.json.*;
public class SortJSONArrayTest {
   public static void main(String[] args) {
      String jsonStr = "[ { \"ID\": \"115\", \"Name\": \"Raja\" },{ \"ID\": \"120\", \"Name\": \"Jai\" },{ \"ID\": \"125\", \"Name\": \"Adithya\" }]";
      JSONArray jsonArray = new JSONArray(jsonStr);
      JSONArray sortedJsonArray = new JSONArray();
      List list = new ArrayList();
      for(int i = 0; i < jsonArray.length(); i++) {
         list.add(jsonArray.getJSONObject(i));
      }
      System.out.println("Before Sorted JSONArray: " + jsonArray);
      Collections.sort(list, new Comparator() {
         private static final String KEY_NAME = "Name";
         @Override
         public int compare(JSONObject a, JSONObject b) {
            String str1 = new String();
            String str2 = new String();
            try {
               str1 = (String)a.get(KEY_NAME);
               str2 = (String)b.get(KEY_NAME);
            } catch(JSONException e) {
               e.printStackTrace();
            }
            return str1.compareTo(str2);
         }
      });
      for(int i = 0; i < jsonArray.length(); i++) {
        <strong> </strong>sortedJsonArray.put(list.get(i));
      }
      System.out.println("Sorted JSON Array with Name: " + sortedJsonArray);
   }
}
登入後複製

輸出

Before Sorted JSONArray:
[{"ID":"115","Name":"Raja"},
   {"ID":"120","Name":"Jai"},
   {"ID":"125","Name":"Adithya"}]
Sorted JSON Array with Name:
[{"ID":"125","Name":"Adithya"},
   {"ID":"120","Name":"Jai"},
   {"ID":"115","Name":"Raja"}]
登入後複製

以上是我們如何在Java中對JSONArray進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板