diff --git a/JSONArray.java b/JSONArray.java index b5a2dd4..fc639f1 100644 --- a/JSONArray.java +++ b/JSONArray.java @@ -1,28 +1,28 @@ package org.json; /* -Copyright (c) 2002 JSON.org + Copyright (c) 2002 JSON.org -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. -The Software shall be used for Good, not Evil. + The Software shall be used for Good, not Evil. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -*/ + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + */ import java.io.IOException; import java.io.StringWriter; @@ -81,13 +81,11 @@ import java.util.Map; */ public class JSONArray { - /** * The arrayList where the JSONArray's properties are kept. */ private final ArrayList myArrayList; - /** * Construct an empty JSONArray. */ @@ -97,8 +95,11 @@ public class JSONArray { /** * Construct a JSONArray from a JSONTokener. - * @param x A JSONTokener - * @throws JSONException If there is a syntax error. + * + * @param x + * A JSONTokener + * @throws JSONException + * If there is a syntax error. */ public JSONArray(JSONTokener x) throws JSONException { this(); @@ -132,22 +133,25 @@ public class JSONArray { } } - /** * Construct a JSONArray from a source JSON text. - * @param source A string that begins with - * [ (left bracket) - * and ends with ] (right bracket). - * @throws JSONException If there is a syntax error. + * + * @param source + * A string that begins with [ (left + * bracket) and ends with ] + *  (right bracket). + * @throws JSONException + * If there is a syntax error. */ public JSONArray(String source) throws JSONException { this(new JSONTokener(source)); } - /** * Construct a JSONArray from a Collection. - * @param collection A Collection. + * + * @param collection + * A Collection. */ public JSONArray(Collection collection) { this.myArrayList = new ArrayList(); @@ -159,10 +163,11 @@ public class JSONArray { } } - /** * Construct a JSONArray from an array - * @throws JSONException If not an array. + * + * @throws JSONException + * If not an array. */ public JSONArray(Object array) throws JSONException { this(); @@ -173,17 +178,18 @@ public class JSONArray { } } else { throw new JSONException( -"JSONArray initial value should be a string or collection or array."); + "JSONArray initial value should be a string or collection or array."); } } - /** * Get the object value associated with an index. + * * @param index - * The index must be between 0 and length() - 1. + * The index must be between 0 and length() - 1. * @return An object value. - * @throws JSONException If there is no value for the index. + * @throws JSONException + * If there is no value for the index. */ public Object get(int index) throws JSONException { Object object = this.opt(index); @@ -193,159 +199,173 @@ public class JSONArray { return object; } - /** - * Get the boolean value associated with an index. - * The string values "true" and "false" are converted to boolean. + * Get the boolean value associated with an index. The string values "true" + * and "false" are converted to boolean. * - * @param index The index must be between 0 and length() - 1. - * @return The truth. - * @throws JSONException If there is no value for the index or if the - * value is not convertible to boolean. + * @param index + * The index must be between 0 and length() - 1. + * @return The truth. + * @throws JSONException + * If there is no value for the index or if the value is not + * convertible to boolean. */ public boolean getBoolean(int index) throws JSONException { Object object = this.get(index); - if (object.equals(Boolean.FALSE) || - (object instanceof String && - ((String)object).equalsIgnoreCase("false"))) { + if (object.equals(Boolean.FALSE) + || (object instanceof String && ((String) object) + .equalsIgnoreCase("false"))) { return false; - } else if (object.equals(Boolean.TRUE) || - (object instanceof String && - ((String)object).equalsIgnoreCase("true"))) { + } else if (object.equals(Boolean.TRUE) + || (object instanceof String && ((String) object) + .equalsIgnoreCase("true"))) { return true; } throw new JSONException("JSONArray[" + index + "] is not a boolean."); } - /** * Get the double value associated with an index. * - * @param index The index must be between 0 and length() - 1. - * @return The value. - * @throws JSONException If the key is not found or if the value cannot - * be converted to a number. + * @param index + * The index must be between 0 and length() - 1. + * @return The value. + * @throws JSONException + * If the key is not found or if the value cannot be converted + * to a number. */ public double getDouble(int index) throws JSONException { Object object = this.get(index); try { - return object instanceof Number - ? ((Number)object).doubleValue() - : Double.parseDouble((String)object); + return object instanceof Number ? ((Number) object).doubleValue() + : Double.parseDouble((String) object); } catch (Exception e) { - throw new JSONException("JSONArray[" + index + - "] is not a number."); + throw new JSONException("JSONArray[" + index + "] is not a number."); } } - /** * Get the int value associated with an index. * - * @param index The index must be between 0 and length() - 1. - * @return The value. - * @throws JSONException If the key is not found or if the value is not a number. + * @param index + * The index must be between 0 and length() - 1. + * @return The value. + * @throws JSONException + * If the key is not found or if the value is not a number. */ public int getInt(int index) throws JSONException { Object object = this.get(index); try { - return object instanceof Number - ? ((Number)object).intValue() - : Integer.parseInt((String)object); + return object instanceof Number ? ((Number) object).intValue() + : Integer.parseInt((String) object); } catch (Exception e) { - throw new JSONException("JSONArray[" + index + - "] is not a number."); + throw new JSONException("JSONArray[" + index + "] is not a number."); } } - /** * Get the JSONArray associated with an index. - * @param index The index must be between 0 and length() - 1. - * @return A JSONArray value. - * @throws JSONException If there is no value for the index. or if the - * value is not a JSONArray + * + * @param index + * The index must be between 0 and length() - 1. + * @return A JSONArray value. + * @throws JSONException + * If there is no value for the index. or if the value is not a + * JSONArray */ public JSONArray getJSONArray(int index) throws JSONException { Object object = this.get(index); if (object instanceof JSONArray) { - return (JSONArray)object; + return (JSONArray) object; } - throw new JSONException("JSONArray[" + index + - "] is not a JSONArray."); + throw new JSONException("JSONArray[" + index + "] is not a JSONArray."); } - /** * Get the JSONObject associated with an index. - * @param index subscript - * @return A JSONObject value. - * @throws JSONException If there is no value for the index or if the - * value is not a JSONObject + * + * @param index + * subscript + * @return A JSONObject value. + * @throws JSONException + * If there is no value for the index or if the value is not a + * JSONObject */ public JSONObject getJSONObject(int index) throws JSONException { Object object = this.get(index); if (object instanceof JSONObject) { - return (JSONObject)object; + return (JSONObject) object; } - throw new JSONException("JSONArray[" + index + - "] is not a JSONObject."); + throw new JSONException("JSONArray[" + index + "] is not a JSONObject."); } - /** * Get the long value associated with an index. * - * @param index The index must be between 0 and length() - 1. - * @return The value. - * @throws JSONException If the key is not found or if the value cannot - * be converted to a number. + * @param index + * The index must be between 0 and length() - 1. + * @return The value. + * @throws JSONException + * If the key is not found or if the value cannot be converted + * to a number. */ public long getLong(int index) throws JSONException { Object object = this.get(index); try { - return object instanceof Number - ? ((Number)object).longValue() - : Long.parseLong((String)object); + return object instanceof Number ? ((Number) object).longValue() + : Long.parseLong((String) object); } catch (Exception e) { - throw new JSONException("JSONArray[" + index + - "] is not a number."); + throw new JSONException("JSONArray[" + index + "] is not a number."); } } - /** * Get the string associated with an index. - * @param index The index must be between 0 and length() - 1. - * @return A string value. - * @throws JSONException If there is no string value for the index. + * + * @param index + * The index must be between 0 and length() - 1. + * @return A string value. + * @throws JSONException + * If there is no string value for the index. */ public String getString(int index) throws JSONException { Object object = this.get(index); if (object instanceof String) { - return (String)object; + return (String) object; } throw new JSONException("JSONArray[" + index + "] not a string."); } - /** * Determine if the value is null. - * @param index The index must be between 0 and length() - 1. + * + * @param index + * The index must be between 0 and length() - 1. * @return true if the value at the index is null, or if there is no value. */ public boolean isNull(int index) { return JSONObject.NULL.equals(this.opt(index)); } + /** + * Returns an iterator. + * + * @return An iterator. + */ + public Iterator iterator() { + return this.myArrayList.iterator(); + } /** * Make a string from the contents of this JSONArray. The - * separator string is inserted between each element. - * Warning: This method assumes that the data structure is acyclical. - * @param separator A string that will be inserted between the elements. + * separator string is inserted between each element. Warning: + * This method assumes that the data structure is acyclical. + * + * @param separator + * A string that will be inserted between the elements. * @return a string. - * @throws JSONException If the array contains an invalid number. + * @throws JSONException + * If the array contains an invalid number. */ public String join(String separator) throws JSONException { int len = this.length(); @@ -360,7 +380,6 @@ public class JSONArray { return sb.toString(); } - /** * Get the number of elements in the JSONArray, included nulls. * @@ -370,43 +389,43 @@ public class JSONArray { return this.myArrayList.size(); } - /** * Get the optional object value associated with an index. - * @param index The index must be between 0 and length() - 1. - * @return An object value, or null if there is no - * object at that index. + * + * @param index + * The index must be between 0 and length() - 1. + * @return An object value, or null if there is no object at that index. */ public Object opt(int index) { - return (index < 0 || index >= this.length()) - ? null - : this.myArrayList.get(index); + return (index < 0 || index >= this.length()) ? null : this.myArrayList + .get(index); } - /** - * Get the optional boolean value associated with an index. - * It returns false if there is no value at that index, - * or if the value is not Boolean.TRUE or the String "true". + * Get the optional boolean value associated with an index. It returns false + * if there is no value at that index, or if the value is not Boolean.TRUE + * or the String "true". * - * @param index The index must be between 0 and length() - 1. - * @return The truth. + * @param index + * The index must be between 0 and length() - 1. + * @return The truth. */ - public boolean optBoolean(int index) { + public boolean optBoolean(int index) { return this.optBoolean(index, false); } - /** - * Get the optional boolean value associated with an index. - * It returns the defaultValue if there is no value at that index or if - * it is not a Boolean or the String "true" or "false" (case insensitive). + * Get the optional boolean value associated with an index. It returns the + * defaultValue if there is no value at that index or if it is not a Boolean + * or the String "true" or "false" (case insensitive). * - * @param index The index must be between 0 and length() - 1. - * @param defaultValue A boolean default. - * @return The truth. + * @param index + * The index must be between 0 and length() - 1. + * @param defaultValue + * A boolean default. + * @return The truth. */ - public boolean optBoolean(int index, boolean defaultValue) { + public boolean optBoolean(int index, boolean defaultValue) { try { return this.getBoolean(index); } catch (Exception e) { @@ -414,28 +433,29 @@ public class JSONArray { } } - /** - * Get the optional double value associated with an index. - * NaN is returned if there is no value for the index, - * or if the value is not a number and cannot be converted to a number. + * Get the optional double value associated with an index. NaN is returned + * if there is no value for the index, or if the value is not a number and + * cannot be converted to a number. * - * @param index The index must be between 0 and length() - 1. - * @return The value. + * @param index + * The index must be between 0 and length() - 1. + * @return The value. */ public double optDouble(int index) { return this.optDouble(index, Double.NaN); } - /** - * Get the optional double value associated with an index. - * The defaultValue is returned if there is no value for the index, - * or if the value is not a number and cannot be converted to a number. + * Get the optional double value associated with an index. The defaultValue + * is returned if there is no value for the index, or if the value is not a + * number and cannot be converted to a number. * - * @param index subscript - * @param defaultValue The default value. - * @return The value. + * @param index + * subscript + * @param defaultValue + * The default value. + * @return The value. */ public double optDouble(int index, double defaultValue) { try { @@ -445,27 +465,29 @@ public class JSONArray { } } - /** - * Get the optional int value associated with an index. - * Zero is returned if there is no value for the index, - * or if the value is not a number and cannot be converted to a number. + * Get the optional int value associated with an index. Zero is returned if + * there is no value for the index, or if the value is not a number and + * cannot be converted to a number. * - * @param index The index must be between 0 and length() - 1. - * @return The value. + * @param index + * The index must be between 0 and length() - 1. + * @return The value. */ public int optInt(int index) { return this.optInt(index, 0); } - /** - * Get the optional int value associated with an index. - * The defaultValue is returned if there is no value for the index, - * or if the value is not a number and cannot be converted to a number. - * @param index The index must be between 0 and length() - 1. - * @param defaultValue The default value. - * @return The value. + * Get the optional int value associated with an index. The defaultValue is + * returned if there is no value for the index, or if the value is not a + * number and cannot be converted to a number. + * + * @param index + * The index must be between 0 and length() - 1. + * @param defaultValue + * The default value. + * @return The value. */ public int optInt(int index, int defaultValue) { try { @@ -475,53 +497,56 @@ public class JSONArray { } } - /** * Get the optional JSONArray associated with an index. - * @param index subscript - * @return A JSONArray value, or null if the index has no value, - * or if the value is not a JSONArray. + * + * @param index + * subscript + * @return A JSONArray value, or null if the index has no value, or if the + * value is not a JSONArray. */ public JSONArray optJSONArray(int index) { Object o = this.opt(index); - return o instanceof JSONArray ? (JSONArray)o : null; + return o instanceof JSONArray ? (JSONArray) o : null; } - /** - * Get the optional JSONObject associated with an index. - * Null is returned if the key is not found, or null if the index has - * no value, or if the value is not a JSONObject. + * Get the optional JSONObject associated with an index. Null is returned if + * the key is not found, or null if the index has no value, or if the value + * is not a JSONObject. * - * @param index The index must be between 0 and length() - 1. - * @return A JSONObject value. + * @param index + * The index must be between 0 and length() - 1. + * @return A JSONObject value. */ public JSONObject optJSONObject(int index) { Object o = this.opt(index); - return o instanceof JSONObject ? (JSONObject)o : null; + return o instanceof JSONObject ? (JSONObject) o : null; } - /** - * Get the optional long value associated with an index. - * Zero is returned if there is no value for the index, - * or if the value is not a number and cannot be converted to a number. + * Get the optional long value associated with an index. Zero is returned if + * there is no value for the index, or if the value is not a number and + * cannot be converted to a number. * - * @param index The index must be between 0 and length() - 1. - * @return The value. + * @param index + * The index must be between 0 and length() - 1. + * @return The value. */ public long optLong(int index) { return this.optLong(index, 0); } - /** - * Get the optional long value associated with an index. - * The defaultValue is returned if there is no value for the index, - * or if the value is not a number and cannot be converted to a number. - * @param index The index must be between 0 and length() - 1. - * @param defaultValue The default value. - * @return The value. + * Get the optional long value associated with an index. The defaultValue is + * returned if there is no value for the index, or if the value is not a + * number and cannot be converted to a number. + * + * @param index + * The index must be between 0 and length() - 1. + * @param defaultValue + * The default value. + * @return The value. */ public long optLong(int index, long defaultValue) { try { @@ -531,40 +556,40 @@ public class JSONArray { } } - /** * Get the optional string value associated with an index. It returns an - * empty string if there is no value at that index. If the value - * is not a string and is not null, then it is coverted to a string. + * empty string if there is no value at that index. If the value is not a + * string and is not null, then it is coverted to a string. * - * @param index The index must be between 0 and length() - 1. - * @return A String value. + * @param index + * The index must be between 0 and length() - 1. + * @return A String value. */ public String optString(int index) { return this.optString(index, ""); } - /** - * Get the optional string associated with an index. - * The defaultValue is returned if the key is not found. + * Get the optional string associated with an index. The defaultValue is + * returned if the key is not found. * - * @param index The index must be between 0 and length() - 1. - * @param defaultValue The default value. - * @return A String value. + * @param index + * The index must be between 0 and length() - 1. + * @param defaultValue + * The default value. + * @return A String value. */ public String optString(int index, String defaultValue) { Object object = this.opt(index); - return JSONObject.NULL.equals(object) - ? defaultValue - : object.toString(); + return JSONObject.NULL.equals(object) ? defaultValue : object + .toString(); } - /** * Append a boolean value. This increases the array's length by one. * - * @param value A boolean value. + * @param value + * A boolean value. * @return this. */ public JSONArray put(boolean value) { @@ -572,24 +597,26 @@ public class JSONArray { return this; } - /** - * Put a value in the JSONArray, where the value will be a - * JSONArray which is produced from a Collection. - * @param value A Collection value. - * @return this. + * Put a value in the JSONArray, where the value will be a JSONArray which + * is produced from a Collection. + * + * @param value + * A Collection value. + * @return this. */ public JSONArray put(Collection value) { this.put(new JSONArray(value)); return this; } - /** * Append a double value. This increases the array's length by one. * - * @param value A double value. - * @throws JSONException if the value is not finite. + * @param value + * A double value. + * @throws JSONException + * if the value is not finite. * @return this. */ public JSONArray put(double value) throws JSONException { @@ -599,11 +626,11 @@ public class JSONArray { return this; } - /** * Append an int value. This increases the array's length by one. * - * @param value An int value. + * @param value + * An int value. * @return this. */ public JSONArray put(int value) { @@ -611,11 +638,11 @@ public class JSONArray { return this; } - /** * Append an long value. This increases the array's length by one. * - * @param value A long value. + * @param value + * A long value. * @return this. */ public JSONArray put(long value) { @@ -623,24 +650,26 @@ public class JSONArray { return this; } - /** - * Put a value in the JSONArray, where the value will be a - * JSONObject which is produced from a Map. - * @param value A Map value. - * @return this. + * Put a value in the JSONArray, where the value will be a JSONObject which + * is produced from a Map. + * + * @param value + * A Map value. + * @return this. */ public JSONArray put(Map value) { this.put(new JSONObject(value)); return this; } - /** * Append an object value. This increases the array's length by one. - * @param value An object value. The value should be a - * Boolean, Double, Integer, JSONArray, JSONObject, Long, or String, or the - * JSONObject.NULL object. + * + * @param value + * An object value. The value should be a Boolean, Double, + * Integer, JSONArray, JSONObject, Long, or String, or the + * JSONObject.NULL object. * @return this. */ public JSONArray put(Object value) { @@ -648,109 +677,128 @@ public class JSONArray { return this; } - /** * Put or replace a boolean value in the JSONArray. If the index is greater * than the length of the JSONArray, then null elements will be added as * necessary to pad it out. - * @param index The subscript. - * @param value A boolean value. + * + * @param index + * The subscript. + * @param value + * A boolean value. * @return this. - * @throws JSONException If the index is negative. + * @throws JSONException + * If the index is negative. */ public JSONArray put(int index, boolean value) throws JSONException { this.put(index, value ? Boolean.TRUE : Boolean.FALSE); return this; } - /** - * Put a value in the JSONArray, where the value will be a - * JSONArray which is produced from a Collection. - * @param index The subscript. - * @param value A Collection value. - * @return this. - * @throws JSONException If the index is negative or if the value is - * not finite. + * Put a value in the JSONArray, where the value will be a JSONArray which + * is produced from a Collection. + * + * @param index + * The subscript. + * @param value + * A Collection value. + * @return this. + * @throws JSONException + * If the index is negative or if the value is not finite. */ public JSONArray put(int index, Collection value) throws JSONException { this.put(index, new JSONArray(value)); return this; } - /** * Put or replace a double value. If the index is greater than the length of - * the JSONArray, then null elements will be added as necessary to pad - * it out. - * @param index The subscript. - * @param value A double value. + * the JSONArray, then null elements will be added as necessary to pad it + * out. + * + * @param index + * The subscript. + * @param value + * A double value. * @return this. - * @throws JSONException If the index is negative or if the value is - * not finite. + * @throws JSONException + * If the index is negative or if the value is not finite. */ public JSONArray put(int index, double value) throws JSONException { this.put(index, new Double(value)); return this; } - /** * Put or replace an int value. If the index is greater than the length of - * the JSONArray, then null elements will be added as necessary to pad - * it out. - * @param index The subscript. - * @param value An int value. + * the JSONArray, then null elements will be added as necessary to pad it + * out. + * + * @param index + * The subscript. + * @param value + * An int value. * @return this. - * @throws JSONException If the index is negative. + * @throws JSONException + * If the index is negative. */ public JSONArray put(int index, int value) throws JSONException { this.put(index, new Integer(value)); return this; } - /** * Put or replace a long value. If the index is greater than the length of - * the JSONArray, then null elements will be added as necessary to pad - * it out. - * @param index The subscript. - * @param value A long value. + * the JSONArray, then null elements will be added as necessary to pad it + * out. + * + * @param index + * The subscript. + * @param value + * A long value. * @return this. - * @throws JSONException If the index is negative. + * @throws JSONException + * If the index is negative. */ public JSONArray put(int index, long value) throws JSONException { this.put(index, new Long(value)); return this; } - /** - * Put a value in the JSONArray, where the value will be a - * JSONObject that is produced from a Map. - * @param index The subscript. - * @param value The Map value. - * @return this. - * @throws JSONException If the index is negative or if the the value is - * an invalid number. + * Put a value in the JSONArray, where the value will be a JSONObject that + * is produced from a Map. + * + * @param index + * The subscript. + * @param value + * The Map value. + * @return this. + * @throws JSONException + * If the index is negative or if the the value is an invalid + * number. */ public JSONArray put(int index, Map value) throws JSONException { this.put(index, new JSONObject(value)); return this; } - /** * Put or replace an object value in the JSONArray. If the index is greater - * than the length of the JSONArray, then null elements will be added as - * necessary to pad it out. - * @param index The subscript. - * @param value The value to put into the array. The value should be a - * Boolean, Double, Integer, JSONArray, JSONObject, Long, or String, or the - * JSONObject.NULL object. + * than the length of the JSONArray, then null elements will be added as + * necessary to pad it out. + * + * @param index + * The subscript. + * @param value + * The value to put into the array. The value should be a + * Boolean, Double, Integer, JSONArray, JSONObject, Long, or + * String, or the JSONObject.NULL object. * @return this. - * @throws JSONException If the index is negative or if the the value is - * an invalid number. + * @throws JSONException + * If the index is negative or if the the value is an invalid + * number. */ public JSONArray put(int index, Object value) throws JSONException { JSONObject.testValidity(value); @@ -768,12 +816,13 @@ public class JSONArray { return this; } - /** * Remove an index and close the hole. - * @param index The index of the element to be removed. - * @return The value that was associated with the index, - * or null if there was no value. + * + * @param index + * The index of the element to be removed. + * @return The value that was associated with the index, or null if there + * was no value. */ public Object remove(int index) { Object o = this.opt(index); @@ -781,15 +830,17 @@ public class JSONArray { return o; } - /** - * Produce a JSONObject by combining a JSONArray of names with the values - * of this JSONArray. - * @param names A JSONArray containing a list of key strings. These will be - * paired with the values. + * Produce a JSONObject by combining a JSONArray of names with the values of + * this JSONArray. + * + * @param names + * A JSONArray containing a list of key strings. These will be + * paired with the values. * @return A JSONObject, or null if there are no names or if this JSONArray - * has no values. - * @throws JSONException If any of the names are null. + * has no values. + * @throws JSONException + * If any of the names are null. */ public JSONObject toJSONObject(JSONArray names) throws JSONException { if (names == null || names.length() == 0 || this.length() == 0) { @@ -802,17 +853,16 @@ public class JSONArray { return jo; } - /** - * Make a JSON text of this JSONArray. For compactness, no - * unnecessary whitespace is added. If it is not possible to produce a - * syntactically correct JSON text then null will be returned instead. This - * could occur if the array contains an invalid number. + * Make a JSON text of this JSONArray. For compactness, no unnecessary + * whitespace is added. If it is not possible to produce a syntactically + * correct JSON text then null will be returned instead. This could occur if + * the array contains an invalid number. *

* Warning: This method assumes that the data structure is acyclical. * - * @return a printable, displayable, transmittable - * representation of the array. + * @return a printable, displayable, transmittable representation of the + * array. */ public String toString() { try { @@ -822,16 +872,16 @@ public class JSONArray { } } - /** - * Make a prettyprinted JSON text of this JSONArray. - * Warning: This method assumes that the data structure is acyclical. - * @param indentFactor The number of spaces to add to each level of - * indentation. - * @return a printable, displayable, transmittable - * representation of the object, beginning - * with [ (left bracket) and ending - * with ] (right bracket). + * Make a prettyprinted JSON text of this JSONArray. Warning: This method + * assumes that the data structure is acyclical. + * + * @param indentFactor + * The number of spaces to add to each level of indentation. + * @return a printable, displayable, transmittable representation of the + * object, beginning with [ (left + * bracket) and ending with ] + *  (right bracket). * @throws JSONException */ public String toString(int indentFactor) throws JSONException { @@ -900,7 +950,7 @@ public class JSONArray { writer.write(']'); return writer; } catch (IOException e) { - throw new JSONException(e); + throw new JSONException(e); } } }