JSON配列からデータをイテレーションして取得する方法
JavaでJSONArrayからデータを取得するには、以下の手順を実行します。
- まず،JSON文字列をJSONArrayオブジェクトにJSONライブラリを使用して変換します。例えば、org.jsonライブラリを使用した場合は、文字列をJSONArrayオブジェクトに変換するためにJSONArrayコンストラクタを使用します。
String jsonString = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
JSONArray jsonArray = new JSONArray(jsonString);
- そして、JSONArrayオブジェクトをforループで走査して、getJSONObjectメソッドで各JSONObjectを取得します。
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
// 在此处处理每个JSON对象的数据
}
- JSONObjectのgetメソッドを使ってキー名から対応する値を取得できます。
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
以下にサンプルコード全体を示します。
import org.json.JSONArray;
import org.json.JSONObject;
public class Main {
public static void main(String[] args) {
String jsonString = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
JSONArray jsonArray = new JSONArray(jsonString);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
System.out.println("Name: " + name);
System.out.println("Age: " + age);
}
}
}
上記のコードを実行すると、以下の結果が出力されます。
Name: John
Age: 30
Name: Jane
Age: 25
注意:上記の例ではorg.jsonライブラリを使用していますが、Jackson、Gsonなどの他のJSONライブラリを使用することもできます。ライブラリによって使用方法が異なりますが、基本的な原理は同じです。