Java JSONArray 重複削除の効率的な方法
Javaで、JSONArrayから重複する要素を削除するためにLinkedHashSetを使用することができます。具体的な手順は以下のとおりです:
- JSONArrayをListオブジェクトに変換します。
- ListオブジェクトをLinkedHashSetオブジェクトに変換すると、LinkedHashSetは自動的に重複要素を削除します。
- 重複を削除したLinkedHashSetオブジェクトをJSONArrayオブジェクトに変換します。
以下はサンプルコードです。
import org.json.JSONArray;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.List;
public class Main {
public static void main(String[] args) {
JSONArray jsonArray = new JSONArray("[1, 2, 3, 2, 4, 3, 5]");
List<Integer> list = new ArrayList<>();
for (int i = 0; i < jsonArray.length(); i++) {
list.add(jsonArray.getInt(i));
}
LinkedHashSet<Integer> set = new LinkedHashSet<>(list);
JSONArray uniqueJsonArray = new JSONArray();
for (Integer num : set) {
uniqueJsonArray.put(num);
}
System.out.println(uniqueJsonArray.toString());
}
}
上記のコードは、重複を削除したJSONArray:[1、2、3、4、5]を出力します。