JavaTM 2 Platform
Std. Ed. v1.4.1

java.lang.reflect
Class Array

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.


Method Summary
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 a boolean.
static byte getByte(Object array, int index)
          Returns the value of the indexed component in the specified array object, as a byte.
static char getChar(Object array, int index)
          Returns the value of the indexed component in the specified array object, as a char.
static double getDouble(Object array, int index)
          Returns the value of the indexed component in the specified array object, as a double.
static float getFloat(Object array, int index)
          Returns the value of the indexed component in the specified array object, as a float.
static int getInt(Object array, int index)
          Returns the value of the indexed component in the specified array object, as an int.
static int getLength(Object array)
          Returns the length of the specified array object, as an int.
static long getLong(Object array, int index)
          Returns the value of the indexed component in the specified array object, as a long.
static short getShort(Object array, int index)
          Returns the value of the indexed component in the specified array object, as a short.
static Object newInstance(Class componentType, int length)
          Creates a new array with the specified component type and length.
static Object newInstance(Class componentType, int[] dimensions)
          Creates a new array with the specified component type and dimensions.
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 specified boolean value.
static void setByte(Object array, int index, byte b)
          Sets the value of the indexed component of the specified array object to the specified byte value.
static void setChar(Object array, int index, char c)
          Sets the value of the indexed component of the specified array object to the specified char value.
static void setDouble(Object array, int index, double d)
          Sets the value of the indexed component of the specified array object to the specified double value.
static void setFloat(Object array, int index, float f)
          Sets the value of the indexed component of the specified array object to the specified float value.
static void setInt(Object array, int index, int i)
          Sets the value of the indexed component of the specified array object to the specified int value.
static void setLong(Object array, int index, long l)
          Sets the value of the indexed component of the specified array object to the specified long value.
static void setShort(Object array, int index, short s)
          Sets the value of the indexed component of the specified array object to the specified short value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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);
 

Parameters:
componentType - the Class object representing the component type of the new array
length - the length of the new array
Returns:
the new array
Throws:
NullPointerException - if the specified componentType parameter is null
IllegalArgumentException - if componentType is Void.TYPE
NegativeArraySizeException - if the specified length 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. If componentType represents a non-array class or interface, the new array has dimensions.length dimensions and  componentType  as its component type. If componentType represents an array class, the number of dimensions of the new array is equal to the sum of dimensions.length and the number of dimensions of componentType. In this case, the component type of the new array is the component type of componentType.

The number of dimensions of the new array must not exceed the number of array dimensions supported by the implementation (typically 255).

Parameters:
componentType - the Class object representing the component type of the new array
dimensions - an array of int types representing the dimensions of the new array
Returns:
the new array
Throws:
NullPointerException - if the specified componentType argument is null
IllegalArgumentException - if the specified dimensions argument is a zero-dimensional array, or if the number of requested dimensions exceeds the limit on the number of array dimensions supported by the implementation (typically 255), or if componentType is Void.TYPE.
NegativeArraySizeException - if any of the components in the specified dimensions argument is negative.

getLength

public static int getLength(Object array)
                     throws IllegalArgumentException
Returns the length of the specified array object, as an int.

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 specified index 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 a boolean.

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 specified index 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 a byte.

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 specified index 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 a char.

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 specified index 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 a short.

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 specified index 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 an int.

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 specified index 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 a long.

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 specified index 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 a float.

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 specified index 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 a double.

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 specified index 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, or if the array component type is primitive and the specified value is null
IllegalArgumentException - If the specified object argument is not an array, or if the array component type is primitive and the specified value cannot be converted to the primitive type by a combination of unwrapping and identity or widening conversions
ArrayIndexOutOfBoundsException - If the specified index 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 specified boolean 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified byte 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified char 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified short 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified int 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified long 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified float 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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 specified double 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 the specified value cannot be converted to the underlying array's component type by an identity or a primitive widening widening conversion
ArrayIndexOutOfBoundsException - If the specified index 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)

JavaTM 2 Platform
Std. Ed. v1.4.1

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.