返回介绍

java.lang.reflect 类 Array

发布于 2019-10-04 09:51:16 字数 23169 浏览 1056 评论 0 收藏 0

java.lang.Object
  └java.lang.reflect.Array

public final class Array
extends Object
 

Array 类提供了动态创建和访问 Java 数组的方法。

Array 允许在执行 get 或 set 操作期间进行扩展转换,但如果发生收缩转换,则抛出 IllegalArgumentException


方法摘要
staticObjectget(Objectarray, intindex)

返回指定数组对象中索引组件的值。

staticbooleangetBoolean(Objectarray, intindex)

boolean 形式返回指定数组对象中索引组件的值。

staticbytegetByte(Objectarray, intindex)

byte 形式返回指定数组对象中索引组件的值。

staticchargetChar(Objectarray, intindex)

char 形式返回指定数组对象中索引组件的值。

staticdoublegetDouble(Objectarray, intindex)

double 形式返回指定数组对象中索引组件的值。

staticfloatgetFloat(Objectarray, intindex)

float 形式返回指定数组对象中索引组件的值。

staticintgetInt(Objectarray, intindex)

int 形式返回指定数组对象中索引组件的值。

staticintgetLength(Objectarray)

int 形式返回指定数组对象的长度。

staticlonggetLong(Objectarray, intindex)

long 形式返回指定数组对象中索引组件的值。

staticshortgetShort(Objectarray, intindex)

short 形式返回指定数组对象中索引组件的值。

staticObjectnewInstance(Class<?>componentType, intlength)

创建一个具有指定的组件类型和长度的新数组。

staticObjectnewInstance(Class<?>componentType, int[]dimensions)

创建一个具有指定的组件类型和维度的新数组。

staticvoidset(Objectarray, intindex, Objectvalue)

将指定数组对象中索引组件的值设置为指定的新值。

staticvoidsetBoolean(Objectarray, intindex, booleanz)

将指定数组对象中索引组件的值设置为指定的 boolean 值。

staticvoidsetByte(Objectarray, intindex, byteb)

将指定数组对象中索引组件的值设置为指定的 byte 值。

staticvoidsetChar(Objectarray, intindex, charc)

将指定数组对象中索引组件的值设置为指定的 char 值。

staticvoidsetDouble(Objectarray, intindex, doubled)

将指定数组对象中索引组件的值设置为指定的 double 值。

staticvoidsetFloat(Objectarray, intindex, floatf)

将指定数组对象中索引组件的值设置为指定的 float 值。

staticvoidsetInt(Objectarray, intindex, inti)

将指定数组对象中索引组件的值设置为指定的 int 值。

staticvoidsetLong(Objectarray, intindex, longl)

将指定数组对象中索引组件的值设置为指定的 long 值。

staticvoidsetShort(Objectarray, intindex, shorts)

将指定数组对象中索引组件的值设置为指定的 short 值。

从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

方法详细信息

newInstance

public static Object newInstance(Class<?>componentType,
                                 intlength)
                          throws NegativeArraySizeException
创建一个具有指定的组件类型和长度的新数组。调用此方法等效于创建如下数组:
 int[] x = {length};
 Array.newInstance(componentType, x);
参数:
componentType - 表示新数组的组件类型的 Class 对象
length - 新数组的长度
返回:
新数组
抛出:
NullPointerException - 如果指定的 componentType 参数为 null
IllegalArgumentException - 如果 componentType 为 Void.TYPE
NegativeArraySizeException - 如果指定的 length 为负

newInstance

public static Object newInstance(Class<?>componentType,
                                 int[]dimensions)
                          throws IllegalArgumentException,
                                 NegativeArraySizeException
创建一个具有指定的组件类型和维度的新数组。如果 componentType 表示一个非数组类或接口,则新数组具有 dimensions.length 维度,并且将 componentType 作为其组件类型。如果 componentType 表示一个数组类,则新数组的维数等于 dimensions.lengthcomponentType 的维数的总和。在这种情况下,新数组的组件类型为 componentType 的组件类型。

新数组的维数不能超过该实现所支持的数组维数(通常为 255)。

参数:
componentType - 表示新数组的组件类型的 Class 对象
dimensions - 表示新数组维度的 int 类型的数组
返回:
新数组
抛出:
NullPointerException - 如果指定的 componentType 参数为 null
IllegalArgumentException - 如果指定的 dimensions 参数是一个零维度的数组,或者如果所请求的维数超过了该实现所支持的数组维数的限制(通常为 225),或者度的数组,或者如果所请求的维数超过了该实现所支持的数组维数的限制(通常为 225),或者 componentType 为 Void.TYPE。
NegativeArraySizeException - 如果指定的 dimensions 参数中的任意组件为负。

getLength

public static int getLength(Objectarray)
                     throws IllegalArgumentException
int 形式返回指定数组对象的长度。
参数:
array - 数组
返回:
数组的长度
抛出:
IllegalArgumentException - 如果对象参数不是一个数组

get

public static Object get(Objectarray,
                         intindex)
                  throws IllegalArgumentException,
                         ArrayIndexOutOfBoundsException
返回指定数组对象中索引组件的值。如果该值是一个基本类型值,则自动将其包装在一个对象中。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的(可能已封装的)值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度

getBoolean

public static boolean getBoolean(Objectarray,
                                 intindex)
                          throws IllegalArgumentException,
                                 ArrayIndexOutOfBoundsException
boolean 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getByte

public static byte getByte(Objectarray,
                           intindex)
                    throws IllegalArgumentException,
                           ArrayIndexOutOfBoundsException
byte 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getChar

public static char getChar(Objectarray,
                           intindex)
                    throws IllegalArgumentException,
                           ArrayIndexOutOfBoundsException
char 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getShort

public static short getShort(Objectarray,
                             intindex)
                      throws IllegalArgumentException,
                             ArrayIndexOutOfBoundsException
short 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getInt

public static int getInt(Objectarray,
                         intindex)
                  throws IllegalArgumentException,
                         ArrayIndexOutOfBoundsException
int 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getLong

public static long getLong(Objectarray,
                           intindex)
                    throws IllegalArgumentException,
                           ArrayIndexOutOfBoundsException
long 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getFloat

public static float getFloat(Objectarray,
                             intindex)
                      throws IllegalArgumentException,
                             ArrayIndexOutOfBoundsException
float 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

getDouble

public static double getDouble(Objectarray,
                               intindex)
                        throws IllegalArgumentException,
                               ArrayIndexOutOfBoundsException
double 形式返回指定数组对象中索引组件的值。
参数:
array - 数组
index - 索引
返回:
指定数组中索引组件的值
抛出:
NullPointerException - 如果指定对象为 null
IllegalArgumentException - 如果指定对象不是一个数组,或者如果无法通过一个标识或扩展转换将索引元素转换为返回类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
get(java.lang.Object, int)

set

public static void set(Objectarray,
                       intindex,
                       Objectvalue)
                throws IllegalArgumentException,
                       ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的新值。如果数组的类型为基本组件类型,则新值第一个被自动解包。
参数:
array - 数组
index - 数组内部的索引
value - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果数组组件类型是基本类型并且解包转换失败
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度

setBoolean

public static void setBoolean(Objectarray,
                              intindex,
                              booleanz)
                       throws IllegalArgumentException,
                              ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 boolean 值。
参数:
array - 数组
index - 数组内部的索引
z - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setByte

public static void setByte(Objectarray,
                           intindex,
                           byteb)
                    throws IllegalArgumentException,
                           ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 byte 值。
参数:
array - 数组
index - 数组内部的索引
b - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setChar

public static void setChar(Objectarray,
                           intindex,
                           charc)
                    throws IllegalArgumentException,
                           ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 char 值。
参数:
array - 数组
index - 数组内部的索引
c - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setShort

public static void setShort(Objectarray,
                            intindex,
                            shorts)
                     throws IllegalArgumentException,
                            ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 short 值。
参数:
array - 数组
index - 数组内部的索引
s - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setInt

public static void setInt(Objectarray,
                          intindex,
                          inti)
                   throws IllegalArgumentException,
                          ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 int 值。
参数:
array - 数组
index - 数组内部的索引
i - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setLong

public static void setLong(Objectarray,
                           intindex,
                           longl)
                    throws IllegalArgumentException,
                           ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 long 值。
参数:
array - 数组
index - 数组内部的索引
l - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setFloat

public static void setFloat(Objectarray,
                            intindex,
                            floatf)
                     throws IllegalArgumentException,
                            ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 float 值。
参数:
array - 数组
index - 数组内部的索引
f - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

setDouble

public static void setDouble(Objectarray,
                             intindex,
                             doubled)
                      throws IllegalArgumentException,
                             ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 double 值。
参数:
array - 数组
index - 数组内部的索引
d - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者如果无法通过一个标识或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者如果它大于或等于指定数组的长度
另请参见:
set(java.lang.Object, int, java.lang.Object)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文