Класс Array
public final class Array extends Object
Array предоставляет статические методы для динамического создания и доступа к массивам Java. Array позволяет выполнять расширяющие преобразования при операции get или set, но генерирует исключение IllegalArgumentException при выполнении сужающего преобразования.
- С момента:
- 1.1
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static Object |
get |
Возвращает значение индексированного компонента в указанном объекте массива. |
static boolean |
getBoolean |
Возвращает значение индексированного компонента в указанном объекте массива в виде boolean. |
static byte |
getByte |
Возвращает значение индексированного компонента в указанном объекте массива в виде byte. |
static char |
getChar |
Возвращает значение индексированного компонента в указанном объекте массива в виде char. |
static double |
getDouble |
Возвращает значение индексированного компонента в указанном объекте массива в виде double. |
static float |
getFloat |
Возвращает значение индексированного компонента в указанном объекте массива в виде float. |
static int |
getInt |
Возвращает значение индексированного компонента в указанном объекте массива в виде int. |
static int |
getLength |
Возвращает длину указанного объекта массива в виде int. |
static long |
getLong |
Возвращает значение индексированного компонента в указанном объекте массива в виде long. |
static short |
getShort |
Возвращает значение индексированного компонента в указанном объекте массива в виде short. |
static Object |
newInstance |
Создаёт новый массив с указанным типом компонента и длиной. |
static Object |
newInstance |
Создаёт новый массив с указанным типом компонента и измерениями. |
static void |
set |
Устанавливает значение индексированного компонента указанного объекта массива на новое заданное значение. |
static void |
setBoolean |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение boolean. |
static void |
setByte |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение byte. |
static void |
setChar |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение char. |
static void |
setDouble |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение double. |
static void |
setFloat |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение float. |
static void |
setInt |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение int. |
static void |
setLong |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение long. |
static void |
setShort |
Устанавливает значение индексированного компонента указанного объекта массива на заданное значение short. |
Подробное описание методов
newInstance
public static Object newInstance(Class<?> componentType, int length) throws NegativeArraySizeException
int[] x = {length};
Array.newInstance(componentType, x);
Количество измерений нового массива не должно превышать 255.
- Параметры:
-
componentType- объектClass, представляющий тип компонента нового массива -
length- длина нового массива - Возвращает:
- новый массив
- Исключения:
-
NullPointerException- если указанный параметрcomponentTypeимеет значение null -
IllegalArgumentException- если componentType равенVoid.TYPEили если количество измерений запрашиваемого массива превышает 255. -
NegativeArraySizeException- если указанная длинаlengthотрицательна
newInstance
public static Object newInstance(Class<?> componentType, int... dimensions) throws IllegalArgumentException, NegativeArraySizeException
componentType представляет не-массивен класс или интерфейс, новый массив имеет dimensions.length измерения и componentType в качестве типа компонента. Если componentType представляет класс массива, количество измерений нового массива равно сумме dimensions.length и количества измерений componentType. В этом случае тип компонента нового массива — тип компонента componentType. Количество измерений нового массива не должно превышать 255.
- Параметры:
-
componentType- объектClass, представляющий тип компонента нового массива -
dimensions- массивint, представляющий измерения нового массива - Возвращает:
- новый массив
- Исключения:
-
NullPointerException- если указанный параметрcomponentTypeимеет значение null -
IllegalArgumentException- если указанный параметрdimensionsпредставляет нульмерный массив, если componentType равенVoid.TYPEили если количество измерений запрашиваемого массива превышает 255. -
NegativeArraySizeException- если любой из компонентов в указанном параметреdimensionsимеет отрицательное значение.
getLength
public static int getLength(Object array) throws IllegalArgumentException
int. - Параметры:
-
array- массив - Возвращает:
- длину массива
- Исключения:
-
IllegalArgumentException- если объект-аргумент не является массивом
get
public static Object get(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение (возможно, обернутое) индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива
getBoolean
public static boolean getBoolean(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
boolean.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getByte
public static byte getByte(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
byte.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getChar
public static char getChar(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
char.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getShort
public static short getShort(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
short.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getInt
public static int getInt(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
int.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getLong
public static long getLong(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
long.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getFloat
public static float getFloat(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
float.- Параметры:
-
array- массив -
index- индекс - Возвращает:
- значение индексированного компонента в указанном массиве
- Исключения:
-
NullPointerException- Если указанный объект имеет значение null -
IllegalArgumentException- Если указанный объект не является массивом или индексированный элемент не может быть преобразован в тип возврата с помощью преобразования тождества или расширения -
ArrayIndexOutOfBoundsException- Если указанный индекс имеет отрицательное значение или больше или равно длине указанного массива - См. также:
getDouble
public static double getDouble(Object array, int index) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
double.- Parameters:
-
array- массив -
index- индекс - Returns:
- значение индексированного компонента в указанном массиве
- Throws:
-
NullPointerException- Если указанный объект равен null -
IllegalArgumentException- Если указанный объект не является массивом или если индексированный элемент не может быть преобразован в тип возвращаемого значения с помощью тождественного или расширяющего преобразования -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
set
public static void set(Object array, int index, Object value) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
- Parameters:
-
array- массив -
index- индекс в массиве -
value- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если тип компонента массива является примитивным, а преобразование распаковки завершается ошибкой -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива
setBoolean
public static void setBoolean(Object array, int index, boolean z) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
boolean значение.- Parameters:
-
array- массив -
index- индекс в массиве -
z- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setByte
public static void setByte(Object array, int index, byte b) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
byte значение.- Parameters:
-
array- массив -
index- индекс в массиве -
b- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setChar
public static void setChar(Object array, int index, char c) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
char значение.- Parameters:
-
array- массив -
index- индекс в массиве -
c- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setShort
public static void setShort(Object array, int index, short s) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
short значение.- Parameters:
-
array- массив -
index- индекс в массиве -
s- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setInt
public static void setInt(Object array, int index, int i) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
int значение.- Parameters:
-
array- массив -
index- индекс в массиве -
i- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setLong
public static void setLong(Object array, int index, long l) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
long значение.- Parameters:
-
array- массив -
index- индекс в массиве -
l- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setFloat
public static void setFloat(Object array, int index, float f) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
float значение.- Parameters:
-
array- массив -
index- индекс в массиве -
f- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
setDouble
public static void setDouble(Object array, int index, double d) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
double значение.- Parameters:
-
array- массив -
index- индекс в массиве -
d- новое значение индексированного компонента - Throws:
-
NullPointerException- Если указанный аргумент объекта равен null -
IllegalArgumentException- Если указанный аргумент объекта не является массивом или если указанное значение не может быть преобразовано в базовый тип компонента массива с помощью тождественного или расширяющего преобразования примитивного типа -
ArrayIndexOutOfBoundsException- Если указанныйindexаргумент отрицательный или больше или равен длине указанного массива - See Also:
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/reflect/Array.html