com.amazonaws.util.json

## クラス JSONArray

- java.lang.Object
- - com.amazonaws.util.json.JSONArray

-     public class JSONArray
      extends java.lang.Object

  A JSONArray is an ordered sequence of values. Its external text form is a string wrapped in square brackets with commas separating the values. The internal form is an object having `get` and `opt` methods for accessing the values by index, and `put` methods for adding or replacing values. The values can be any of these types: `Boolean`, `JSONArray`, `JSONObject`, `Number`, `String`, or the `JSONObject.NULL object`.

  The constructor can convert a JSON text into a Java object. The `toString` method converts to JSON text.

  A `get` method returns a value if one can be found, and throws an exception if one cannot be found. An `opt` method returns a default value instead of throwing an exception, and so is useful for obtaining optional values.

  The generic `get()` and `opt()` methods return an object which you can cast or query for type. There are also typed `get` and `opt` methods that do type checking and type coercion for you.

  The texts produced by the `toString` methods strictly conform to JSON syntax rules. The constructors are more forgiving in the texts they will accept:

  - An extra `,` (comma) may appear just before the closing bracket.
  - The `null` value will be inserted when there is `,` (comma) elision.
  - Strings may be quoted with `'` (single quote).
  - Strings do not need to be quoted at all if they do not begin with a quote or single quote, and if they do not contain leading or trailing spaces, and if they do not contain any of these characters: `{ } [ ] / \ : , = ; #` and if they do not look like numbers and if they are not the reserved words `true`, `false`, or `null`.
  - Values can be separated by `;` (semicolon) as well as by `,` (comma).
  - Numbers may have the `0x-` (hex) prefix.
  バージョン:
    2009-04-14

- - ### コンストラクタの概要

    コンストラクタ
    コンストラクタと説明
    `JSONArray()` Construct an empty JSONArray.
    `JSONArray(java.util.Collection collection)` Construct a JSONArray from a Collection.
    `JSONArray(JSONTokener x)` Construct a JSONArray from a JSONTokener.
    `JSONArray(java.lang.Object array)` Construct a JSONArray from an array
    `JSONArray(java.lang.String source)` Construct a JSONArray from a source JSON text.

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `java.lang.Object` | `get(int index)` Get the object value associated with an index.
    `boolean` | `getBoolean(int index)` Get the boolean value associated with an index.
    `double` | `getDouble(int index)` Get the double value associated with an index.
    `int` | `getInt(int index)` Get the int value associated with an index.
    `JSONArray` | `getJSONArray(int index)` Get the JSONArray associated with an index.
    `JSONObject` | `getJSONObject(int index)` Get the JSONObject associated with an index.
    `long` | `getLong(int index)` Get the long value associated with an index.
    `java.lang.String` | `getString(int index)` Get the string associated with an index.
    `boolean` | `isNull(int index)` Determine if the value is null.
    `java.lang.String` | `join(java.lang.String separator)` Make a string from the contents of this JSONArray.
    `int` | `length()` Get the number of elements in the JSONArray, included nulls.
    `java.lang.Object` | `opt(int index)` Get the optional object value associated with an index.
    `boolean` | `optBoolean(int index)` Get the optional boolean value associated with an index.
    `boolean` | `optBoolean(int index, boolean defaultValue)` Get the optional boolean value associated with an index.
    `double` | `optDouble(int index)` Get the optional double value associated with an index.
    `double` | `optDouble(int index, double defaultValue)` Get the optional double value associated with an index.
    `int` | `optInt(int index)` Get the optional int value associated with an index.
    `int` | `optInt(int index, int defaultValue)` Get the optional int value associated with an index.
    `JSONArray` | `optJSONArray(int index)` Get the optional JSONArray associated with an index.
    `JSONObject` | `optJSONObject(int index)` Get the optional JSONObject associated with an index.
    `long` | `optLong(int index)` Get the optional long value associated with an index.
    `long` | `optLong(int index, long defaultValue)` Get the optional long value associated with an index.
    `java.lang.String` | `optString(int index)` Get the optional string value associated with an index.
    `java.lang.String` | `optString(int index, java.lang.String defaultValue)` Get the optional string associated with an index.
    `JSONArray` | `put(boolean value)` Append a boolean value.
    `JSONArray` | `put(java.util.Collection value)` Put a value in the JSONArray, where the value will be a JSONArray which is produced from a Collection.
    `JSONArray` | `put(double value)` Append a double value.
    `JSONArray` | `put(int value)` Append an int value.
    `JSONArray` | `put(int index, boolean value)` Put or replace a boolean value in the JSONArray.
    `JSONArray` | `put(int index, java.util.Collection value)` Put a value in the JSONArray, where the value will be a JSONArray which is produced from a Collection.
    `JSONArray` | `put(int index, double value)` Put or replace a double value.
    `JSONArray` | `put(int index, int value)` Put or replace an int value.
    `JSONArray` | `put(int index, long value)` Put or replace a long value.
    `JSONArray` | `put(int index, java.util.Map value)` Put a value in the JSONArray, where the value will be a JSONObject which is produced from a Map.
    `JSONArray` | `put(int index, java.lang.Object value)` Put or replace an object value in the JSONArray.
    `JSONArray` | `put(long value)` Append an long value.
    `JSONArray` | `put(java.util.Map value)` Put a value in the JSONArray, where the value will be a JSONObject which is produced from a Map.
    `JSONArray` | `put(java.lang.Object value)` Append an object value.
    `java.lang.Object` | `remove(int index)` Remove an index and close the hole.
    `JSONObject` | `toJSONObject(JSONArray names)` Produce a JSONObject by combining a JSONArray of names with the values of this JSONArray.
    `java.lang.String` | `toString()` Make a JSON text of this JSONArray.
    `java.lang.String` | `toString(int indentFactor)` Make a prettyprinted JSON text of this JSONArray.
    `java.io.Writer` | `write(java.io.Writer writer)` Write the contents of the JSONArray as JSON text to a writer.

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### コンストラクタの詳細

    - #### JSONArray

          public JSONArray()

      Construct an empty JSONArray.

    - #### JSONArray

          public JSONArray(JSONTokener x)
                    throws JSONException

      Construct a JSONArray from a JSONTokener.
      パラメータ:
        `x` - A JSONTokener
      例外:
        `JSONException` - If there is a syntax error.

    - #### JSONArray

          public JSONArray(java.lang.String source)
                    throws JSONException

      Construct a JSONArray from a source JSON text.
      パラメータ:
        `source` - A string that begins with `[` (left bracket) and ends with `]` (right bracket).
      例外:
        `JSONException` - If there is a syntax error.

    - #### JSONArray

          public JSONArray(java.util.Collection collection)

      Construct a JSONArray from a Collection.
      パラメータ:
        `collection` - A Collection.

    - #### JSONArray

          public JSONArray(java.lang.Object array)
                    throws JSONException

      Construct a JSONArray from an array
      例外:
        `JSONException` - If not an array.

  - ### メソッドの詳細

    - #### get

          public java.lang.Object get(int index)
                               throws JSONException

      Get the object value associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        An object value.
      例外:
        `JSONException` - If there is no value for the index.

    - #### getBoolean

          public boolean getBoolean(int index)
                             throws JSONException

      Get the boolean value associated with an index. The string values "true" and "false" are converted to boolean.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The truth.
      例外:
        `JSONException` - If there is no value for the index or if the value is not convertable to boolean.

    - #### getDouble

          public double getDouble(int index)
                           throws JSONException

      Get the double value associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The value.
      例外:
        `JSONException` - If the key is not found or if the value cannot be converted to a number.

    - #### getInt

          public int getInt(int index)
                     throws JSONException

      Get the int value associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The value.
      例外:
        `JSONException` - If the key is not found or if the value cannot be converted to a number. if the value cannot be converted to a number.

    - #### getJSONArray

          public JSONArray getJSONArray(int index)
                                 throws JSONException

      Get the JSONArray associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        A JSONArray value.
      例外:
        `JSONException` - If there is no value for the index. or if the value is not a JSONArray

    - #### getJSONObject

          public JSONObject getJSONObject(int index)
                                   throws JSONException

      Get the JSONObject associated with an index.
      パラメータ:
        `index` - subscript
      戻り値:
        A JSONObject value.
      例外:
        `JSONException` - If there is no value for the index or if the value is not a JSONObject

    - #### getLong

          public long getLong(int index)
                       throws JSONException

      Get the long value associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The value.
      例外:
        `JSONException` - If the key is not found or if the value cannot be converted to a number.

    - #### getString

          public java.lang.String getString(int index)
                                     throws JSONException

      Get the string associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        A string value.
      例外:
        `JSONException` - If there is no value for the index.

    - #### isNull

          public boolean isNull(int index)

      Determine if the value is null.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        true if the value at the index is null, or if there is no value.

    - #### join

          public java.lang.String join(java.lang.String separator)
                                throws JSONException

      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.
      パラメータ:
        `separator` - A string that will be inserted between the elements.
      戻り値:
        a string.
      例外:
        `JSONException` - If the array contains an invalid number.

    - #### length

          public int length()

      Get the number of elements in the JSONArray, included nulls.
      戻り値:
        The length (or size).

    - #### opt

          public java.lang.Object opt(int index)

      Get the optional object value associated with an index.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        An object value, or null if there is no object at that index.

    - #### optBoolean

          public boolean optBoolean(int 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".
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The truth.

    - #### optBoolean

          public boolean optBoolean(int index,
                           boolean defaultValue)

      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).
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
        `defaultValue` - A boolean default.
      戻り値:
        The truth.

    - #### optDouble

          public double optDouble(int index)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The value.

    - #### optDouble

          public double optDouble(int index,
                         double defaultValue)

      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.
      パラメータ:
        `index` - subscript
        `defaultValue` - The default value.
      戻り値:
        The value.

    - #### optInt

          public int optInt(int index)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The value.

    - #### optInt

          public int optInt(int index,
                   int defaultValue)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
        `defaultValue` - The default value.
      戻り値:
        The value.

    - #### optJSONArray

          public JSONArray optJSONArray(int index)

      Get the optional JSONArray associated with an index.
      パラメータ:
        `index` - subscript
      戻り値:
        A JSONArray value, or null if the index has no value, or if the value is not a JSONArray.

    - #### optJSONObject

          public JSONObject optJSONObject(int index)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        A JSONObject value.

    - #### optLong

          public long optLong(int index)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        The value.

    - #### optLong

          public long optLong(int index,
                     long defaultValue)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
        `defaultValue` - The default value.
      戻り値:
        The value.

    - #### optString

          public java.lang.String optString(int index)

      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.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
      戻り値:
        A String value.

    - #### optString

          public java.lang.String optString(int index,
                                   java.lang.String defaultValue)

      Get the optional string associated with an index. The defaultValue is returned if the key is not found.
      パラメータ:
        `index` - The index must be between 0 and length() - 1.
        `defaultValue` - The default value.
      戻り値:
        A String value.

    - #### put

          public JSONArray put(boolean value)

      Append a boolean value. This increases the array's length by one.
      パラメータ:
        `value` - A boolean value.
      戻り値:
        this.

    - #### put

          public JSONArray put(java.util.Collection value)

      Put a value in the JSONArray, where the value will be a JSONArray which is produced from a Collection.
      パラメータ:
        `value` - A Collection value.
      戻り値:
        this.

    - #### put

          public JSONArray put(double value)
                        throws JSONException

      Append a double value. This increases the array's length by one.
      パラメータ:
        `value` - A double value.
      戻り値:
        this.
      例外:
        `JSONException` - if the value is not finite.

    - #### put

          public JSONArray put(int value)

      Append an int value. This increases the array's length by one.
      パラメータ:
        `value` - An int value.
      戻り値:
        this.

    - #### put

          public JSONArray put(long value)

      Append an long value. This increases the array's length by one.
      パラメータ:
        `value` - A long value.
      戻り値:
        this.

    - #### put

          public JSONArray put(java.util.Map value)

      Put a value in the JSONArray, where the value will be a JSONObject which is produced from a Map.
      パラメータ:
        `value` - A Map value.
      戻り値:
        this.

    - #### put

          public JSONArray put(java.lang.Object value)

      Append an object value. This increases the array's length by one.
      パラメータ:
        `value` - An object value. The value should be a Boolean, Double, Integer, JSONArray, JSONObject, Long, or String, or the JSONObject.NULL object.
      戻り値:
        this.

    - #### put

          public JSONArray put(int index,
                      boolean value)
                        throws JSONException

      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.
      パラメータ:
        `index` - The subscript.
        `value` - A boolean value.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative.

    - #### put

          public JSONArray put(int index,
                      java.util.Collection value)
                        throws JSONException

      Put a value in the JSONArray, where the value will be a JSONArray which is produced from a Collection.
      パラメータ:
        `index` - The subscript.
        `value` - A Collection value.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative or if the value is not finite.

    - #### put

          public JSONArray put(int index,
                      double value)
                        throws JSONException

      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.
      パラメータ:
        `index` - The subscript.
        `value` - A double value.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative or if the value is not finite.

    - #### put

          public JSONArray put(int index,
                      int value)
                        throws JSONException

      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.
      パラメータ:
        `index` - The subscript.
        `value` - An int value.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative.

    - #### put

          public JSONArray put(int index,
                      long value)
                        throws JSONException

      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.
      パラメータ:
        `index` - The subscript.
        `value` - A long value.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative.

    - #### put

          public JSONArray put(int index,
                      java.util.Map value)
                        throws JSONException

      Put a value in the JSONArray, where the value will be a JSONObject which is produced from a Map.
      パラメータ:
        `index` - The subscript.
        `value` - The Map value.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative or if the the value is an invalid number.

    - #### put

          public JSONArray put(int index,
                      java.lang.Object value)
                        throws JSONException

      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.
      パラメータ:
        `index` - The subscript.
        `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.
      戻り値:
        this.
      例外:
        `JSONException` - If the index is negative or if the the value is an invalid number.

    - #### remove

          public java.lang.Object remove(int index)

      Remove an index and close the hole.
      パラメータ:
        `index` - The index of the element to be removed.
      戻り値:
        The value that was associated with the index, or null if there was no value.

    - #### toJSONObject

          public JSONObject toJSONObject(JSONArray names)
                                  throws JSONException

      Produce a JSONObject by combining a JSONArray of names with the values of this JSONArray.
      パラメータ:
        `names` - A JSONArray containing a list of key strings. These will be paired with the values.
      戻り値:
        A JSONObject, or null if there are no names or if this JSONArray has no values.
      例外:
        `JSONException` - If any of the names are null.

    - #### toString

          public java.lang.String toString()

      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.

      オーバーライド:
        `toString` クラス内 `java.lang.Object`
      戻り値:
        a printable, displayable, transmittable representation of the array.

    - #### toString

          public java.lang.String toString(int indentFactor)
                                    throws JSONException

      Make a prettyprinted JSON text of this JSONArray. Warning: This method assumes that the data structure is acyclical.
      パラメータ:
        `indentFactor` - The number of spaces to add to each level of indentation.
      戻り値:
        a printable, displayable, transmittable representation of the object, beginning with `[` (left bracket) and ending with `]` (right bracket).
      例外:
        `JSONException`

    - #### write

          public java.io.Writer write(java.io.Writer writer)
                               throws JSONException

      Write the contents of the JSONArray as JSON text to a writer. For compactness, no whitespace is added.

      Warning: This method assumes that the data structure is acyclical.

      戻り値:
        The writer.
      例外:
        `JSONException`