Class Array
- java.lang.Object
-
- java.lang.reflect.Array
-
public final class Array extends Object
TheArray
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 anIllegalArgumentException
if a narrowing conversion would occur.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static Object
get(Object array, int index)
Returns the value of the indexed component in the specified array object.static boolean
getBoolean(Object array, int index)
Returns the value of the indexed component in the specified array object, as aboolean
.static byte
getByte(Object array, int index)
Returns the value of the indexed component in the specified array object, as abyte
.static char
getChar(Object array, int index)
Returns the value of the indexed component in the specified array object, as achar
.static double
getDouble(Object array, int index)
Returns the value of the indexed component in the specified array object, as adouble
.static float
getFloat(Object array, int index)
Returns the value of the indexed component in the specified array object, as afloat
.static int
getInt(Object array, int index)
Returns the value of the indexed component in the specified array object, as anint
.static int
getLength(Object array)
Returns the length of the specified array object, as anint
.static long
getLong(Object array, int index)
Returns the value of the indexed component in the specified array object, as along
.static short
getShort(Object array, int index)
Returns the value of the indexed component in the specified array object, as ashort
.static Object
newInstance(Class<?> componentType, int... dimensions)
Creates a new array with the specified component type and dimensions.static Object
newInstance(Class<?> componentType, int length)
Creates a new array with the specified component type and length.static void
set(Object array, int index, Object value)
Sets the value of the indexed component of the specified array object to the specified new value.static void
setBoolean(Object array, int index, boolean z)
Sets the value of the indexed component of the specified array object to the specifiedboolean
value.static void
setByte(Object array, int index, byte b)
Sets the value of the indexed component of the specified array object to the specifiedbyte
value.static void
setChar(Object array, int index, char c)
Sets the value of the indexed component of the specified array object to the specifiedchar
value.static void
setDouble(Object array, int index, double d)
Sets the value of the indexed component of the specified array object to the specifieddouble
value.static void
setFloat(Object array, int index, float f)
Sets the value of the indexed component of the specified array object to the specifiedfloat
value.static void
setInt(Object array, int index, int i)
Sets the value of the indexed component of the specified array object to the specifiedint
value.static void
setLong(Object array, int index, long l)
Sets the value of the indexed component of the specified array object to the specifiedlong
value.static void
setShort(Object array, int index, short s)
Sets the value of the indexed component of the specified array object to the specifiedshort
value.
-
-
-
Method Detail
newInstance
public static Object newInstance(Class<?> componentType, int length) throws NegativeArraySizeException
Creates 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
- theClass
object representing the component type of the new array -
length
- the length of the new array - Returns:
- the new array
- Throws:
-
NullPointerException
- if the specifiedcomponentType
parameter is null -
IllegalArgumentException
- if componentType isVoid.TYPE
or if the number of dimensions of the requested array instance exceed 255. -
NegativeArraySizeException
- if the specifiedlength
is negative
newInstance
public static Object newInstance(Class<?> componentType, int... dimensions) throws IllegalArgumentException, NegativeArraySizeException
Creates a new array with the specified component type and dimensions. IfcomponentType
represents a non-array class or interface, the new array hasdimensions.length
dimensions andcomponentType
as its component type. IfcomponentType
represents an array class, the number of dimensions of the new array is equal to the sum ofdimensions.length
and 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
- theClass
object representing the component type of the new array -
dimensions
- an array ofint
representing the dimensions of the new array - Returns:
- the new array
- Throws:
-
NullPointerException
- if the specifiedcomponentType
argument is null -
IllegalArgumentException
- if the specifieddimensions
argument 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 specifieddimensions
argument is negative.
getLength
public static int getLength(Object array) throws IllegalArgumentException
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, ArrayIndexOutOfBoundsException
Returns 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 array -
index
- the index - Returns:
- the (possibly wrapped) value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- If the specified object is not an array -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as aboolean
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as abyte
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as achar
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as ashort
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as anint
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as along
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as afloat
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Returns the value of the indexed component in the specified array object, as adouble
.- Parameters:
-
array
- the array -
index
- the index - Returns:
- the value of the indexed component in the specified array
- Throws:
-
NullPointerException
- If the specified object is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets 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 array -
index
- the index into the array -
value
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- If the specified object argument is not an array, or if the array component type is primitive and an unwrapping conversion fails -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedboolean
value.- Parameters:
-
array
- the array -
index
- the index into the array -
z
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedbyte
value.- Parameters:
-
array
- the array -
index
- the index into the array -
b
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedchar
value.- Parameters:
-
array
- the array -
index
- the index into the array -
c
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedshort
value.- Parameters:
-
array
- the array -
index
- the index into the array -
s
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedint
value.- Parameters:
-
array
- the array -
index
- the index into the array -
i
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedlong
value.- Parameters:
-
array
- the array -
index
- the index into the array -
l
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifiedfloat
value.- Parameters:
-
array
- the array -
index
- the index into the array -
f
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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, ArrayIndexOutOfBoundsException
Sets the value of the indexed component of the specified array object to the specifieddouble
value.- Parameters:
-
array
- the array -
index
- the index into the array -
d
- the new value of the indexed component - Throws:
-
NullPointerException
- If the specified object argument is null -
IllegalArgumentException
- 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 conversion -
ArrayIndexOutOfBoundsException
- If the specifiedindex
argument 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)
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.