java.lang.Object
java.lang.reflect.Array
public final class Array extends Object
The
Array class provides static methods to dynamically create and
access Java arrays.
Array permits widening conversions to occur during a get or set
operation, but throws an IllegalArgumentException if a narrowing
conversion would occur.
- Since:
- 1.1
-
Method Summary
Modifier and Type Method Description static Objectget(Object array, int index)Returns the value of the indexed component in the specified array object.static booleangetBoolean(Object array, int index)Returns the value of the indexed component in the specified array object, as aboolean.static bytegetByte(Object array, int index)Returns the value of the indexed component in the specified array object, as abyte.static chargetChar(Object array, int index)Returns the value of the indexed component in the specified array object, as achar.static doublegetDouble(Object array, int index)Returns the value of the indexed component in the specified array object, as adouble.static floatgetFloat(Object array, int index)Returns the value of the indexed component in the specified array object, as afloat.static intgetInt(Object array, int index)Returns the value of the indexed component in the specified array object, as anint.static intgetLength(Object array)Returns the length of the specified array object, as anint.static longgetLong(Object array, int index)Returns the value of the indexed component in the specified array object, as along.static shortgetShort(Object array, int index)Returns the value of the indexed component in the specified array object, as ashort.static ObjectnewInstance(Class<?> componentType, int length)Creates a new array with the specified component type and length.static ObjectnewInstance(Class<?> componentType, int... dimensions)Creates a new array with the specified component type and dimensions.static voidset(Object array, int index, Object value)Sets the value of the indexed component of the specified array object to the specified new value.static voidsetBoolean(Object array, int index, boolean z)Sets the value of the indexed component of the specified array object to the specifiedbooleanvalue.static voidsetByte(Object array, int index, byte b)Sets the value of the indexed component of the specified array object to the specifiedbytevalue.static voidsetChar(Object array, int index, char c)Sets the value of the indexed component of the specified array object to the specifiedcharvalue.static voidsetDouble(Object array, int index, double d)Sets the value of the indexed component of the specified array object to the specifieddoublevalue.static voidsetFloat(Object array, int index, float f)Sets the value of the indexed component of the specified array object to the specifiedfloatvalue.static voidsetInt(Object array, int index, int i)Sets the value of the indexed component of the specified array object to the specifiedintvalue.static voidsetLong(Object array, int index, long l)Sets the value of the indexed component of the specified array object to the specifiedlongvalue.static voidsetShort(Object array, int index, short s)Sets the value of the indexed component of the specified array object to the specifiedshortvalue.
-
Method Details
-
newInstance
public static Object newInstance(Class<?> componentType, int length) throws NegativeArraySizeExceptionCreates a new array with the specified component type and length. Invoking this method is equivalent to creating an array as follows:int[] x = {length}; Array.newInstance(componentType, x);The number of dimensions of the new array must not exceed 255.
- Parameters:
componentType- theClassobject representing the component type of the new arraylength- the length of the new array- Returns:
- the new array
- Throws:
NullPointerException- if the specifiedcomponentTypeparameter is nullIllegalArgumentException- if componentType isVoid.TYPEor if the number of dimensions of the requested array instance exceed 255.NegativeArraySizeException- if the specifiedlengthis negative
-
newInstance
public static Object newInstance(Class<?> componentType, int... dimensions) throws IllegalArgumentException, NegativeArraySizeExceptionCreates a new array with the specified component type and dimensions. IfcomponentTyperepresents a non-array class or interface, the new array hasdimensions.lengthdimensions andcomponentTypeas its component type. IfcomponentTyperepresents an array class, the number of dimensions of the new array is equal to the sum ofdimensions.lengthand the number of dimensions ofcomponentType. In this case, the component type of the new array is the component type ofcomponentType.The number of dimensions of the new array must not exceed 255.
- Parameters:
componentType- theClassobject representing the component type of the new arraydimensions- an array ofintrepresenting the dimensions of the new array- Returns:
- the new array
- Throws:
NullPointerException- if the specifiedcomponentTypeargument is nullIllegalArgumentException- if the specifieddimensionsargument is a zero-dimensional array, if componentType isVoid.TYPE, or if the number of dimensions of the requested array instance exceed 255.NegativeArraySizeException- if any of the components in the specifieddimensionsargument is negative.
-
getLength
Returns the length of the specified array object, as anint.- Parameters:
array- the array- Returns:
- the length of the array
- Throws:
IllegalArgumentException- if the object argument is not an array
-
get
public static Object get(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object. The value is automatically wrapped in an object if it has a primitive type.- Parameters:
array- the arrayindex- the index- Returns:
- the (possibly wrapped) value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an arrayArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array
-
getBoolean
public static boolean getBoolean(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as aboolean.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getByte
public static byte getByte(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as abyte.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getChar
public static char getChar(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as achar.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getShort
public static short getShort(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as ashort.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getInt
public static int getInt(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as anint.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getLong
public static long getLong(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as along.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getFloat
public static float getFloat(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as afloat.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
getDouble
public static double getDouble(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionReturns the value of the indexed component in the specified array object, as adouble.- Parameters:
array- the arrayindex- the index- Returns:
- the value of the indexed component in the specified array
- Throws:
NullPointerException- If the specified object is nullIllegalArgumentException- If the specified object is not an array, or if the indexed element cannot be converted to the return type by an identity or widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
get(java.lang.Object, int)
-
set
public static void set(Object array, int index, Object value) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specified new value. The new value is first automatically unwrapped if the array has a primitive component type.- Parameters:
array- the arrayindex- the index into the arrayvalue- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the array component type is primitive and an unwrapping conversion failsArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array
-
setBoolean
public static void setBoolean(Object array, int index, boolean z) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedbooleanvalue.- Parameters:
array- the arrayindex- the index into the arrayz- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setByte
public static void setByte(Object array, int index, byte b) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedbytevalue.- Parameters:
array- the arrayindex- the index into the arrayb- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setChar
public static void setChar(Object array, int index, char c) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedcharvalue.- Parameters:
array- the arrayindex- the index into the arrayc- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setShort
public static void setShort(Object array, int index, short s) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedshortvalue.- Parameters:
array- the arrayindex- the index into the arrays- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setInt
public static void setInt(Object array, int index, int i) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedintvalue.- Parameters:
array- the arrayindex- the index into the arrayi- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setLong
public static void setLong(Object array, int index, long l) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedlongvalue.- Parameters:
array- the arrayindex- the index into the arrayl- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setFloat
public static void setFloat(Object array, int index, float f) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifiedfloatvalue.- Parameters:
array- the arrayindex- the index into the arrayf- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-
setDouble
public static void setDouble(Object array, int index, double d) throws IllegalArgumentException, ArrayIndexOutOfBoundsExceptionSets the value of the indexed component of the specified array object to the specifieddoublevalue.- Parameters:
array- the arrayindex- the index into the arrayd- the new value of the indexed component- Throws:
NullPointerException- If the specified object argument is nullIllegalArgumentException- If the specified object argument is not an array, or if the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening conversionArrayIndexOutOfBoundsException- If the specifiedindexargument is negative, or if it is greater than or equal to the length of the specified array- See Also:
set(java.lang.Object, int, java.lang.Object)
-