Module json5

Class JSONArray

  • All Implemented Interfaces:
    java.lang.Iterable<java.lang.Object>

    public class JSONArray
    extends java.lang.Object
    implements java.lang.Iterable<java.lang.Object>
    A JSONArray is an array structure capable of holding multiple values, including other JSONArrays and JSONObjects
    Author:
    SyntaxError404
    • Constructor Summary

      Constructors 
      Constructor Description
      JSONArray()
      Constructs a new JSONArray
      JSONArray​(JSONParser parser)
      Constructs a new JSONArray from a JSONParser
      JSONArray​(java.lang.String source)
      Constructs a new JSONArray from a string
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      JSONArray add​(java.lang.Object value)
      Adds a value to the JSONArray
      void clear()
      Removes all values from this JSONArray
      java.util.Collection<java.lang.Object> entrySet()
      Returns a collection of values of the JSONArray.
      java.lang.Object get​(int index)
      Returns the value for a given index
      java.lang.Object get​(int index, java.lang.Object defaults)
      Returns the value for a given index, or the default value if the operation is not possible
      JSONArray getArray​(int index)
      Returns the value as a JSONArray for a given index
      JSONArray getArray​(int index, JSONArray defaults)
      Returns the value as a JSONArray for a given index, or the default value if the operation is not possible
      boolean getBoolean​(int index)
      Returns the value as a boolean for a given index
      boolean getBoolean​(int index, boolean defaults)
      Returns the value as a boolean for a given index, or the default value if the operation is not possible
      byte getByte​(int index)
      Returns the value as a byte for a given index
      byte getByte​(int index, byte defaults)
      Returns the value as a byte for a given index, or the default value if the operation is not possible
      byte getByteExact​(int index)
      Returns the exact value as a byte for a given index.
      byte getByteExact​(int index, byte defaults)
      Returns the exact value as a byte for a given index, or the default value if the operation is not possible
      double getDouble​(int index)
      Returns the value as a double for a given index
      double getDouble​(int index, double defaults)
      Returns the value as a double for a given index, or the default value if the operation is not possible
      double getDoubleExact​(int index)
      Returns the exact value as a double for a given index.
      double getDoubleExact​(int index, double defaults)
      Returns the exact value as a double for a given index, or the default value if the operation is not possible
      float getFloat​(int index)
      Returns the value as a float for a given index
      float getFloat​(int index, float defaults)
      Returns the value as a float for a given index, or the default value if the operation is not possible
      float getFloatExact​(int index)
      Returns the exact value as a float for a given index.
      float getFloatExact​(int index, float defaults)
      Returns the exact value as a float for a given index, or the default value if the operation is not possible
      java.time.Instant getInstant​(int index)
      Returns the value as an Instant for a given index
      java.time.Instant getInstant​(int index, java.time.Instant defaults)
      Returns the value as an Instant for a given index, or the default value if the operation is not possible
      int getInt​(int index)
      Returns the value as an int for a given index
      int getInt​(int index, int defaults)
      Returns the value as an int for a given index, or the default value if the operation is not possible
      int getIntExact​(int index)
      Returns the exact value as an int for a given index.
      int getIntExact​(int index, int defaults)
      Returns the exact value as an int for a given index, or the default value if the operation is not possible
      long getLong​(int index)
      Returns the value as a long for a given index
      long getLong​(int index, long defaults)
      Returns the value as a long for a given index, or the default value if the operation is not possible
      long getLongExact​(int index)
      Returns the exact value as a long for a given index.
      long getLongExact​(int index, long defaults)
      Returns the exact value as a long for a given index, or the default value if the operation is not possible
      java.lang.Number getNumber​(int index)
      Returns the value as a number for a given index
      java.lang.Number getNumber​(int index, java.lang.Number defaults)
      Returns the value as a number for a given index, or the default value if the operation is not possible
      JSONObject getObject​(int index)
      Returns the value as a JSONObject for a given index
      JSONObject getObject​(int index, JSONObject defaults)
      Returns the value as a JSONObject for a given index, or the default value if the operation is not possible
      short getShort​(int index)
      Returns the value as a short for a given index
      short getShort​(int index, short defaults)
      Returns the value as a short for a given index, or the default value if the operation is not possible
      short getShortExact​(int index)
      Returns the exact value as a short for a given index.
      short getShortExact​(int index, short defaults)
      Returns the exact value as a short for a given index, or the default value if the operation is not possible
      java.lang.String getString​(int index)
      Returns the value as a string for a given index
      java.lang.String getString​(int index, java.lang.String defaults)
      Returns the value as a string for a given index, or the default value if the operation is not possible
      JSONArray insert​(int index, java.lang.Object value)
      Inserts a value to the JSONArray at a given index
      boolean isArray​(int index)
      Checks if the value with the specified index is a JSONArray
      boolean isBoolean​(int index)
      Checks if the value with the specified index is a boolean
      boolean isInstant​(int index)
      Checks if the value with the specified index is an Instant
      boolean isNull​(int index)
      Checks if the value with the specified index is null
      boolean isNumber​(int index)
      Checks if the value with the specified index is a number
      boolean isObject​(int index)
      Checks if the value with the specified index is a JSONObject
      boolean isString​(int index)
      Checks if the value with the specified index is a string
      java.util.Iterator<java.lang.Object> iterator()  
      int length()
      Returns the number of values in the JSONArray
      void remove​(int index)
      Removes the value at an index from a JSONArray
      JSONArray set​(int index, java.lang.Object value)
      Sets the value at a given index
      java.util.List<java.lang.Object> toList()
      Converts the JSONArray into a list.
      java.lang.String toString()
      Converts the JSONArray into its compact string representation.
      java.lang.String toString​(int indentFactor)
      Converts the JSONArray into its string representation.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.lang.Iterable

        forEach, spliterator
    • Constructor Detail

      • JSONArray

        public JSONArray()
        Constructs a new JSONArray
      • JSONArray

        public JSONArray​(java.lang.String source)
        Constructs a new JSONArray from a string
        Parameters:
        source - a string
      • JSONArray

        public JSONArray​(JSONParser parser)
        Constructs a new JSONArray from a JSONParser
        Parameters:
        parser - a JSONParser
    • Method Detail

      • toList

        public java.util.List<java.lang.Object> toList()
        Converts the JSONArray into a list. All JSONObjects and JSONArrays contained within this JSONArray will be converted into their Map or List form as well
        Returns:
        a list of the values of this array
      • entrySet

        public java.util.Collection<java.lang.Object> entrySet()
        Returns a collection of values of the JSONArray. Modifying the collection will modify the JSONArray Use with caution.
        Returns:
        a set of entries
      • iterator

        public java.util.Iterator<java.lang.Object> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<java.lang.Object>
      • length

        public int length()
        Returns the number of values in the JSONArray
        Returns:
        the number of values
      • clear

        public void clear()
        Removes all values from this JSONArray
        Since:
        1.2.0
      • remove

        public void remove​(int index)
        Removes the value at an index from a JSONArray
        Parameters:
        index - the index to be removed
        Throws:
        JSONException - if the index does not exist
        Since:
        1.2.0
      • isNull

        public boolean isNull​(int index)
        Checks if the value with the specified index is null
        Parameters:
        index - the index
        Returns:
        whether or not the value is null
        Throws:
        JSONException - if the index does not exist
      • isBoolean

        public boolean isBoolean​(int index)
        Checks if the value with the specified index is a boolean
        Parameters:
        index - the index
        Returns:
        whether or not the value is a boolean
        Throws:
        JSONException - if the index does not exist
      • isString

        public boolean isString​(int index)
        Checks if the value with the specified index is a string
        Parameters:
        index - the index
        Returns:
        whether or not the value is a string
        Throws:
        JSONException - if the index does not exist
      • isNumber

        public boolean isNumber​(int index)
        Checks if the value with the specified index is a number
        Parameters:
        index - the index
        Returns:
        whether or not the value is a number
        Throws:
        JSONException - if the index does not exist
      • isObject

        public boolean isObject​(int index)
        Checks if the value with the specified index is a JSONObject
        Parameters:
        index - the index
        Returns:
        whether or not the value is a JSONObject
        Throws:
        JSONException - if the index does not exist
      • isArray

        public boolean isArray​(int index)
        Checks if the value with the specified index is a JSONArray
        Parameters:
        index - the index
        Returns:
        whether or not the value is a JSONArray
        Throws:
        JSONException - if the index does not exist
      • isInstant

        public boolean isInstant​(int index)
        Checks if the value with the specified index is an Instant
        Parameters:
        index - the index
        Returns:
        whether or not the value is an Instant
        Throws:
        JSONException - if the index does not exist
        Since:
        1.1.0
      • get

        public java.lang.Object get​(int index)
        Returns the value for a given index
        Parameters:
        index - the index
        Returns:
        the value
        Throws:
        JSONException - if the index does not exist
      • getBoolean

        public boolean getBoolean​(int index)
        Returns the value as a boolean for a given index
        Parameters:
        index - the index
        Returns:
        the boolean
        Throws:
        JSONException - if the index does not exist, or if the value is not a boolean
      • getString

        public java.lang.String getString​(int index)
        Returns the value as a string for a given index
        Parameters:
        index - the index
        Returns:
        the string
        Throws:
        JSONException - if the index does not exist, or if the value is not a string
      • getNumber

        public java.lang.Number getNumber​(int index)
        Returns the value as a number for a given index
        Parameters:
        index - the index
        Returns:
        the number
        Throws:
        JSONException - if the index does not exist, or if the value is not a number
      • getByte

        public byte getByte​(int index)
        Returns the value as a byte for a given index
        Parameters:
        index - the index
        Returns:
        the byte
        Throws:
        JSONException - if the index does not exist, or if the value is not a byte
      • getShort

        public short getShort​(int index)
        Returns the value as a short for a given index
        Parameters:
        index - the index
        Returns:
        the short
        Throws:
        JSONException - if the index does not exist, or if the value is not a short
      • getInt

        public int getInt​(int index)
        Returns the value as an int for a given index
        Parameters:
        index - the index
        Returns:
        the int
        Throws:
        JSONException - if the index does not exist, or if the value is not an int
      • getLong

        public long getLong​(int index)
        Returns the value as a long for a given index
        Parameters:
        index - the index
        Returns:
        the long
        Throws:
        JSONException - if the index does not exist, or if the value is not a long
      • getFloat

        public float getFloat​(int index)
        Returns the value as a float for a given index
        Parameters:
        index - the index
        Returns:
        the float
        Throws:
        JSONException - if the index does not exist, or if the value is not a float
      • getDouble

        public double getDouble​(int index)
        Returns the value as a double for a given index
        Parameters:
        index - the index
        Returns:
        the double
        Throws:
        JSONException - if the index does not exist, or if the value is not a double
      • getByteExact

        public byte getByteExact​(int index)
        Returns the exact value as a byte for a given index. This fails if the value does not fit into a byte
        Parameters:
        index - the index
        Returns:
        the byte
        Throws:
        JSONException - if the index does not exist, the value is not a byte, or if the value does not fit into a byte
      • getShortExact

        public short getShortExact​(int index)
        Returns the exact value as a short for a given index. This fails if the value does not fit into a short
        Parameters:
        index - the index
        Returns:
        the short
        Throws:
        JSONException - if the index does not exist, the value is not a short, or if the value does not fit into a short
      • getIntExact

        public int getIntExact​(int index)
        Returns the exact value as an int for a given index. This fails if the value does not fit into an int
        Parameters:
        index - the index
        Returns:
        the int
        Throws:
        JSONException - if the index does not exist, the value is not an int, or if the value does not fit into an int
      • getLongExact

        public long getLongExact​(int index)
        Returns the exact value as a long for a given index. This fails if the value does not fit into a long
        Parameters:
        index - the index
        Returns:
        the long
        Throws:
        JSONException - if the index does not exist, the value is not a long, or if the value does not fit into a long
      • getFloatExact

        public float getFloatExact​(int index)
        Returns the exact value as a float for a given index. This fails if the value does not fit into a float
        Parameters:
        index - the index
        Returns:
        the float
        Throws:
        JSONException - if the index does not exist, the value is not a float, or if the value does not fit into a float
      • getDoubleExact

        public double getDoubleExact​(int index)
        Returns the exact value as a double for a given index. This fails if the value does not fit into a double
        Parameters:
        index - the index
        Returns:
        the double
        Throws:
        JSONException - if the index does not exist, the value is not a double, or if the value does not fit into a double
      • getObject

        public JSONObject getObject​(int index)
        Returns the value as a JSONObject for a given index
        Parameters:
        index - the index
        Returns:
        the JSONObject
        Throws:
        JSONException - if the index does not exist, or if the value is not a JSONObject
      • getArray

        public JSONArray getArray​(int index)
        Returns the value as a JSONArray for a given index
        Parameters:
        index - the index
        Returns:
        the JSONArray
        Throws:
        JSONException - if the index does not exist, or if the value is not a JSONArray
      • getInstant

        public java.time.Instant getInstant​(int index)
        Returns the value as an Instant for a given index
        Parameters:
        index - the index
        Returns:
        the Instant
        Throws:
        JSONException - if the index does not exist, or if the value is not an Instant
        Since:
        1.1.0
      • get

        public java.lang.Object get​(int index,
                                    java.lang.Object defaults)
        Returns the value for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the value
      • getBoolean

        public boolean getBoolean​(int index,
                                  boolean defaults)
        Returns the value as a boolean for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the boolean
      • getString

        public java.lang.String getString​(int index,
                                          java.lang.String defaults)
        Returns the value as a string for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the string
      • getNumber

        public java.lang.Number getNumber​(int index,
                                          java.lang.Number defaults)
        Returns the value as a number for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the number
      • getByte

        public byte getByte​(int index,
                            byte defaults)
        Returns the value as a byte for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the byte
      • getShort

        public short getShort​(int index,
                              short defaults)
        Returns the value as a short for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the short
      • getInt

        public int getInt​(int index,
                          int defaults)
        Returns the value as an int for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the int
      • getLong

        public long getLong​(int index,
                            long defaults)
        Returns the value as a long for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the long
      • getFloat

        public float getFloat​(int index,
                              float defaults)
        Returns the value as a float for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the float
      • getDouble

        public double getDouble​(int index,
                                double defaults)
        Returns the value as a double for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the double
      • getByteExact

        public byte getByteExact​(int index,
                                 byte defaults)
        Returns the exact value as a byte for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the byte
      • getShortExact

        public short getShortExact​(int index,
                                   short defaults)
        Returns the exact value as a short for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the short
      • getIntExact

        public int getIntExact​(int index,
                               int defaults)
        Returns the exact value as an int for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the int
      • getLongExact

        public long getLongExact​(int index,
                                 long defaults)
        Returns the exact value as a long for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the long
      • getFloatExact

        public float getFloatExact​(int index,
                                   float defaults)
        Returns the exact value as a float for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the float
      • getDoubleExact

        public double getDoubleExact​(int index,
                                     double defaults)
        Returns the exact value as a double for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the double
      • getObject

        public JSONObject getObject​(int index,
                                    JSONObject defaults)
        Returns the value as a JSONObject for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the JSONObject
      • getArray

        public JSONArray getArray​(int index,
                                  JSONArray defaults)
        Returns the value as a JSONArray for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the JSONArray
      • getInstant

        public java.time.Instant getInstant​(int index,
                                            java.time.Instant defaults)
        Returns the value as an Instant for a given index, or the default value if the operation is not possible
        Parameters:
        index - the index
        defaults - the default value
        Returns:
        the Instant
        Since:
        1.1.0
      • add

        public JSONArray add​(java.lang.Object value)
        Adds a value to the JSONArray
        Parameters:
        value - the new value
        Returns:
        this JSONArray
      • insert

        public JSONArray insert​(int index,
                                java.lang.Object value)
        Inserts a value to the JSONArray at a given index
        Parameters:
        index - the index
        value - the new value
        Returns:
        this JSONArray
        Since:
        1.1.0
      • set

        public JSONArray set​(int index,
                             java.lang.Object value)
        Sets the value at a given index
        Parameters:
        index - the index
        value - the new value
        Returns:
        this JSONArray
      • toString

        public java.lang.String toString​(int indentFactor)
        Converts the JSONArray into its string representation. The indentation factor enables pretty-printing and defines how many spaces (' ') should be placed before each value. A factor of < 1 disables pretty-printing and discards any optional whitespace characters.

        indentFactor = 2:

         [
           "value",
           {
             "nested": 123
           },
           false
         ]
         

        indentFactor = 0:

         ["value",{"nested":123},false]
         
        Parameters:
        indentFactor - the indentation factor
        Returns:
        the string representation
        See Also:
        JSONStringify.toString(JSONArray, int)
      • toString

        public java.lang.String toString()
        Converts the JSONArray into its compact string representation.
        Overrides:
        toString in class java.lang.Object
        Returns:
        the compact string representation