How do I access members of items in a JSONArray in Java?

Both solutions work well, but if you prefer a more modern, functional approach, try Java Streams:

IntStream.range(0, recs.length())
    .mapToObj(recs::getJSONObject)
    .forEach(obj -> {
        int id = obj.optInt("id", -1);
        String loc = obj.optString("loc", "Unknown");
        System.out.println("ID: " + id + ", Location: " + loc);
    });
  • Concise & elegant (especially for large JSON data)
  • Avoids index-based looping