This is my JSON data
{
    "field1" : [
        {
            "key1" : "1",
            "key2" : "2"
        }, {
            "key1" : "1",
            "key2" : "2",
            "key3" : "3",
            "key4" : "4"
        }
    ],
    "field2" : {
        "key1" : "1",
        "key2" : "2",
        "key3" : "3",
        "key4" : "4",
        "key5" : "5"
    },
    "field3" : {
        "key1" : "1"
    }
}
this is my code
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = (JSONObject) jsonParser.parse(reader);
Set arr = jsonObject.keySet();
Iterator iterator = arr.iterator();
Collection innerArray = jsonObject.values();
Iterator iterator1 = innerArray.iterator();
while (iterator.hasNext() && iterator1.hasNext()) {
    System.out.println("key="+iterator.next().toString());
    System.out.println("value="+ iterator1
            .next().toString());
}
i need output like this
field1
-------
key1 -->1
key2 -->2
field1
----------
key1 -->1
key2 -->2
key3 -->3
key4 -->4
field2
--------
key1 -->1
key2 -->2 
key3 -->3
key4 -->4
key5 -->5
field3
------
key1 --> 1
Current Output:
key=field3 value={"key1":"1"} 
key=field2 value={"key4":"4","key3":"3","key5":"5","key2":"2","key1":"1"}
key=field1 value=[{"key2":"2","key1":"1"},{"key4":"4","key3":"3","key2":"2","key1":"1"}] 
Any idea?
 
     
     
    