Sample code for 30+ languages & platforms
Java

JSON: Nested Array

See more JSON Examples

Here we have a JSON object that contains nested arrays. This example demonstrates how to access the contents of the nested arrays.
{
 "numbers" : [ 
    ["even", 2, 4, 6, 8], 
    ["prime", 2, 3, 5, 7, 11, 13] 
  ] }

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.JsonArray;
import com.chilkatsoft.chilkat2.JsonObject;

public class ChilkatExample {

    public static void main(String[] args) {
        JsonObject json = new JsonObject();

        // This is the above JSON with whitespace chars removed (SPACE, TAB, CR, and LF chars).
        // The presence of whitespace chars for pretty-printing makes no difference to the Load
        // method.
        String jsonStr = "{ \"numbers\" : [ [\"even\", 2, 4, 6, 8], [\"prime\", 2, 3, 5, 7, 11, 13] ] }";

        try {
            json.load(jsonStr);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        // Get the value of the "numbers" object, which is an array that contains JSON arrays.
        JsonArray outerArray = json.arrayOf("numbers");
        if (outerArray == null) {
            System.out.println("numbers array not found.");
            return;
        }

        int numArrays = outerArray.getSize();

        for (int i = 0; i < numArrays; i++) {
            JsonArray innerArray = outerArray.arrayAt(i);

            // The first item in the innerArray is a string
            System.out.println(innerArray.stringAt(0) + ":");

            int numInnerItems = innerArray.getSize();
            for (int j = 1; j < numInnerItems; j++) {
                System.out.println("  " + innerArray.intAt(j));
            }

            innerArray.close();
        }

        outerArray.close();
    }
}