-
- All Superinterfaces:
-
Mirror,ObjectReference,Value
public interface ArrayReference extends ObjectReference
- 从以下版本开始:
- 1.3
-
-
字段汇总
-
Fields declared in interface com.sun.jdi.ObjectReference
INVOKE_NONVIRTUAL, INVOKE_SINGLE_THREADED
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 ValuegetValue(int index)返回数组组件值。List<Value>getValues()返回此数组中的所有组件。List<Value>getValues(int index, int length)返回一系列数组组件。intlength()返回此数组中的组件数。voidsetValue(int index, Value value)用另一个值替换数组组件。voidsetValues(int index, List<? extends Value> values, int srcIndex, int length)用其他值替换一系列数组组件。voidsetValues(List<? extends Value> values)用其他值替换所有数组组件。-
声明方法的接口 com.sun.jdi.Mirror
toString, virtualMachine
-
声明方法的接口 com.sun.jdi.ObjectReference
disableCollection, enableCollection, entryCount, equals, getValue, getValues, hashCode, invokeMethod, isCollected, owningThread, referenceType, referringObjects, setValue, uniqueID, waitingThreads
-
-
-
-
方法详细信息
-
length
int length()
返回此数组中的组件数。- 结果
- 此数组中组件的整数计数。
-
getValue
Value getValue(int index)
返回数组组件值。- 参数
-
index- 要检索的组件的索引 - 结果
-
给定指数的
Value。 - 异常
-
IndexOutOfBoundsException- 如果index超出此数组的范围,即,如果满足以下任一条件:index < 0 index >=length()
-
getValues
List<Value> getValues(int index, int length)
返回一系列数组组件。- 参数
-
index- 要检索的第一个组件的索引 -
length- 要检索的组件数,或-1以检索此数组末尾的所有组件。 - 结果
-
一个
Value对象的列表,每个请求的数组组件按数组索引排序。 如果指定范围内没有元素(例如length为零),则返回空列表 - 异常
-
IndexOutOfBoundsException- 如果使用index和length指定的范围不在数组范围内,即,如果满足以下任一条件:index < 0 index >或者如果length()length != -1并且满足以下任一条件:length < 0 index + length >length()
-
setValue
void setValue(int index, Value value) throws InvalidTypeException, ClassNotLoadedException用另一个值替换数组组件。对象值必须与组件类型兼容(这意味着必须通过声明类的类加载器加载组件类型)。 原始值必须是与组件类型兼容的赋值,或者必须可转换为组件类型而不会丢失信息。 有关分配兼容性的更多信息,请参阅JLS第5.2节。
- 参数
-
value- 新值 -
index- 要设置的组件的索引 - 异常
-
IndexOutOfBoundsException- 如果index超出此数组的范围,即,如果满足以下任一条件:index < 0 index >=length() -
InvalidTypeException-如果类型value不与声明的类型阵列组件的兼容。 -
ClassNotLoadedException- 如果尚未通过适当的类加载器加载数组组件类型。 -
VMCannotBeModifiedException- 如果VirtualMachine是只读的 - 请参阅VirtualMachine.canBeModified()。 - 另请参见:
-
ArrayType.componentType()
-
setValues
void setValues(List<? extends Value> values) throws InvalidTypeException, ClassNotLoadedException
用其他值替换所有数组组件。 如果给定列表的大小大于数组,则忽略列表末尾的值。对象值必须与元素类型兼容(这意味着必须通过封闭类的类加载器加载组件类型)。 原始值必须是与组件类型兼容的赋值,或者必须可转换为组件类型而不会丢失信息。 有关分配兼容性的更多信息,请参阅JLS第5.2节。
- 参数
-
values- 要放入此数组的Value个对象的列表。 如果values.size()小于数组的长度,则设置第一个values.size()元素。 - 异常
-
InvalidTypeException- 如果任何新的values与声明的数组组件类型不兼容。 -
ClassNotLoadedException- 如果尚未通过适当的类加载器加载数组组件类型。 -
VMCannotBeModifiedException- 如果VirtualMachine是只读的 - 请参阅VirtualMachine.canBeModified()。 - 另请参见:
-
ArrayType.componentType()
-
setValues
void setValues(int index, List<? extends Value> values, int srcIndex, int length) throws InvalidTypeException, ClassNotLoadedException用其他值替换一系列数组组件。对象值必须与组件类型兼容(这意味着组件类型必须通过封闭类的类加载器加载)。 原始值必须是与组件类型兼容的赋值,或者必须可转换为组件类型而不会丢失信息。 有关分配兼容性的更多信息,请参阅JLS第5.2节。
- 参数
-
index- 要设置的第一个组件的索引。 -
values- 要放入此阵列的Value个对象的列表。 -
srcIndex- 要使用的第一个源值的索引。 -
length- 要设置的组件数,或-1将所有组件设置为此数组的末尾或values(以先到者为准)。 - 异常
-
InvalidTypeException-如果任何元件values不与声明的类型阵列组件的兼容。 -
IndexOutOfBoundsException-如果与指定的数组范围index和length不是阵列的范围内,或如果与指定的源范围srcIndex和length不是内values,即,如果以下任意一项为真:index < 0 index >或者如果length()srcIndex < 0 srcIndex > values.size()length != -1以及以下任何一种情况属实:length < 0 index + length >length()srcIndex + length > values.size() -
VMCannotBeModifiedException- 如果VirtualMachine是只读的 - 请参阅VirtualMachine.canBeModified()。 -
ClassNotLoadedException - 另请参见:
-
ArrayType.componentType()
-
-