Package com.couchbase.lite
Class Array
java.lang.Object
com.couchbase.lite.Array
- All Implemented Interfaces:
ArrayInterface,com.couchbase.lite.internal.fleece.FLEncodable,Iterable<Object>
- Direct Known Subclasses:
MutableArray
public class Array
extends Object
implements ArrayInterface, com.couchbase.lite.internal.fleece.FLEncodable, Iterable<Object>
Array provides readonly access to array data.
-
Method Summary
Modifier and TypeMethodDescriptionfinal intcount()Gets a number of the items in the array.voidencodeTo(com.couchbase.lite.internal.fleece.FLEncoder enc) booleangetArray(int index) Gets value at the given index as an Array.getBlob(int index) Gets value at the given index as a Blob.booleangetBoolean(int index) Gets value at the given index as a boolean.getDate(int index) Gets value at the given index as a Date.getDictionary(int index) Gets a Dictionary at the given index.doublegetDouble(int index) Gets value at the given index as an double.floatgetFloat(int index) Gets value at the given index as an float.intgetInt(int index) Gets value at the given index as an int.longgetLong(int index) Gets value at the given index as an long.getNumber(int index) Gets value at the given index as a Number.getString(int index) Gets value at the given index as a String.getValue(int index) Gets value at the given index as an object.inthashCode()iterator()An iterator over elements of this array.toJSON()Encode an Array as a JSON stringtoList()Gets content of the current object as an List.Return a mutable copy of the arraytoString()Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
toMutable
Return a mutable copy of the array- Returns:
- the MutableArray instance
-
count
public final int count()Gets a number of the items in the array.- Specified by:
countin interfaceArrayInterface- Returns:
- the size of the array
-
getValue
Gets value at the given index as an object. The object types are Blob, Array, Dictionary, Number, or String based on the underlying data type; or null if the value is nil.- Specified by:
getValuein interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the Object or null.
-
getString
Gets value at the given index as a String. Returns null if the value doesn't exist, or its value is not a String.- Specified by:
getStringin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the String or null.
-
getNumber
Gets value at the given index as a Number. Returns null if the value doesn't exist, or its value is not a Number.- Specified by:
getNumberin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the Number or nil.
-
getInt
public int getInt(int index) Gets value at the given index as an int. Floating point values will be rounded. The value `true` is returned as 1, `false` as 0. Returns 0 if the value doesn't exist or does not have a numeric value.- Specified by:
getIntin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the int value.
-
getLong
public long getLong(int index) Gets value at the given index as an long. Floating point values will be rounded. The value `true` is returned as 1, `false` as 0. Returns 0 if the value doesn't exist or does not have a numeric value.- Specified by:
getLongin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the long value.
-
getFloat
public float getFloat(int index) Gets value at the given index as an float. Integers will be converted to float. The value `true` is returned as 1.0, `false` as 0.0. Returns 0.0 if the value doesn't exist or does not have a numeric value.- Specified by:
getFloatin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the float value.
-
getDouble
public double getDouble(int index) Gets value at the given index as an double. Integers will be converted to double. The value `true` is returned as 1.0, `false` as 0.0. Returns 0.0 if the property doesn't exist or does not have a numeric value.- Specified by:
getDoublein interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the double value.
-
getBoolean
public boolean getBoolean(int index) Gets value at the given index as a boolean.- Specified by:
getBooleanin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the boolean value.
-
getBlob
Gets value at the given index as a Blob. Returns null if the value doesn't exist, or its value is not a Blob.- Specified by:
getBlobin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the Blob value or null.
-
getDate
Gets value at the given index as a Date. JSON does not directly support dates, so the actual property value must be a string, which is then parsed according to the ISO-8601 date format (the default used in JSON.) Returns null if the value doesn't exist, is not a string, or is not parsable as a date. NOTE: This is not a generic date parser! It only recognizes the ISO-8601 format, with or without milliseconds.- Specified by:
getDatein interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the Date value or null.
-
getArray
Gets value at the given index as an Array. Returns null if the value doesn't exist, or its value is not an Array.- Specified by:
getArrayin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the Array object.
-
getDictionary
Gets a Dictionary at the given index. Return null if the value is not an dictionary.- Specified by:
getDictionaryin interfaceArrayInterface- Parameters:
index- the index. This value must not exceed the bounds of the array.- Returns:
- the Dictionary object.
-
toList
Gets content of the current object as an List. The values contained in the returned List object are all JSON based values.- Specified by:
toListin interfaceArrayInterface- Returns:
- the List object representing the content of the current object in the JSON format.
-
toJSON
Encode an Array as a JSON string- Specified by:
toJSONin interfaceArrayInterface- Returns:
- JSON encoded representation of the Array
- Throws:
CouchbaseLiteException- on encoder failure.
-
iterator
An iterator over elements of this array. A call to thenext()method of the returned iterator will throw a ConcurrentModificationException, if the MutableArray is modified while it is in use. -
encodeTo
@Internal("This method is not part of the public API") public void encodeTo(@NonNull com.couchbase.lite.internal.fleece.FLEncoder enc) - Specified by:
encodeToin interfacecom.couchbase.lite.internal.fleece.FLEncodable
-
equals
-
hashCode
public int hashCode() -
toString
-