diff --git a/JSONObject.java b/JSONObject.java index f3e34db..060a196 100644 --- a/JSONObject.java +++ b/JSONObject.java @@ -164,6 +164,12 @@ public class JSONObject { * Construct an empty JSONObject. */ public JSONObject() { + // HashMap is used on purpose to ensure that elements are unordered by + // the specification. + // JSON tends to be a portable transfer format to allows the container + // implementations to rearrange their items for a faster element + // retrieval based on associative access. + // Therefore, an implementation mustn't rely on the order of the item. this.map = new HashMap(); } @@ -216,7 +222,7 @@ public class JSONObject { key = x.nextValue().toString(); } -// The key is followed by ':'. + // The key is followed by ':'. c = x.nextClean(); if (c != ':') { @@ -224,7 +230,7 @@ public class JSONObject { } this.putOnce(key, x.nextValue()); -// Pairs are separated by ','. + // Pairs are separated by ','. switch (x.nextClean()) { case ';':