类 ArrayFieldVector<T extends FieldElement<T>>
java.lang.Object
org.hipparchus.linear.ArrayFieldVector<T>
- 类型参数:
-
T
- 字段元素的类型
- 所有已实现的接口:
-
Serializable
,FieldVector<T>
public class ArrayFieldVector<T extends FieldElement<T>> extends Object implements FieldVector<T>, Serializable
该类使用
FieldVector
接口和FieldElement
数组实现。
- 另请参阅:
-
构造器概要
构造器说明ArrayFieldVector
(int size, T preset) 构造具有预设值的向量。ArrayFieldVector
(Field<T> field) 构建长度为0的向量。ArrayFieldVector
(Field<T> field, int size) 构造零向量。ArrayFieldVector
(Field<T> field, T[] d) 从数组构造向量,复制输入数组。ArrayFieldVector
(Field<T> field, T[] d, boolean copyArray) 使用输入数组作为基础数据数组创建新的ArrayFieldVector。ArrayFieldVector
(Field<T> field, T[] d, int pos, int size) 从数组的一部分构造向量。ArrayFieldVector
(Field<T> field, T[] v1, T[] v2) 通过将一个向量附加到另一个向量来构造向量。从另一个向量构造向量,使用深度复制。ArrayFieldVector
(ArrayFieldVector<T> v, boolean deep) 从另一个向量构造向量。从另一个向量构造向量,使用深度复制。ArrayFieldVector
(FieldVector<T> v1, FieldVector<T> v2) 通过将一个向量附加到另一个向量来构造向量。ArrayFieldVector
(FieldVector<T> v1, T[] v2) 通过将一个向量附加到另一个向量来构造向量。ArrayFieldVector
(T[] d) 从数组构造向量,复制输入数组。ArrayFieldVector
(T[] d, boolean copyArray) 使用输入数组作为基础数据数组创建新的ArrayFieldVector。ArrayFieldVector
(T[] d, int pos, int size) 从数组的一部分构造向量。ArrayFieldVector
(T[] v1, FieldVector<T> v2) 通过将一个向量附加到另一个向量来构造向量。ArrayFieldVector
(T[] v1, T[] v2) 通过将一个向量附加到另一个向量来构造向量。 -
方法概要
修饰符和类型方法说明add
(ArrayFieldVector<T> v) 计算this
和v
的和。add
(FieldVector<T> v) 计算this
和v
的和。append
(ArrayFieldVector<T> v) 通过将一个向量附加到此向量来构造向量。append
(FieldVector<T> v) 通过将一个向量附加到此向量来构造向量。通过将一个T附加到此向量来构造向量。protected void
checkVectorDimensions
(int n) 检查实例维度是否等于某个预期值。protected void
检查实例和指定向量是否具有相同的维度。copy()
返回此向量的(深度)副本。计算点积。dotProduct
(FieldVector<T> v) 计算点积。逐元素除法。ebeDivide
(FieldVector<T> v) 逐元素除法。逐元素乘法。ebeMultiply
(FieldVector<T> v) 逐元素乘法。boolean
检查两个向量是否相等。T[]
返回基础数据数组的引用。int
返回向量的大小。getEntry
(int index) 返回指定索引处的条目。getField()
获取向量的字段元素类型。getSubVector
(int index, int n) 从连续元素中获取子向量。int
hashCode()
获取实向量的哈希码。将加法操作映射到每个条目。mapAddToSelf
(T d) 将加法操作映射到每个条目。将除法操作映射到每个条目。mapDivideToSelf
(T d) 将除法操作映射到每个条目。mapInv()
将1/x函数映射到每个条目。将1/x函数映射到每个条目。mapMultiply
(T d) 将乘法操作映射到每个条目。将乘法操作映射到每个条目。mapSubtract
(T d) 将减法操作映射到每个条目。将减法操作映射到每个条目。计算外积。outerProduct
(FieldVector<T> v) 计算外积。找到此向量在另一个向量上的正交投影。projection
(FieldVector<T> v) 找到此向量在另一个向量上的正交投影。void
set
(int index, ArrayFieldVector<T> v) 设置一组连续元素。void
将所有元素设置为单个值。void
设置单个元素。void
setSubVector
(int index, FieldVector<T> v) 设置一组连续元素。计算this
减去v
。subtract
(FieldVector<T> v) 计算this
减去v
。T[]
toArray()
将向量转换为T数组。toString()
walkInDefaultOrder
(FieldVectorChangingVisitor<T> visitor) 以默认顺序(增加索引)访问(可能更改)此向量的所有条目。walkInDefaultOrder
(FieldVectorChangingVisitor<T> visitor, int start, int end) 以默认顺序(增加索引)访问(可能更改)此向量的一些条目。walkInDefaultOrder
(FieldVectorPreservingVisitor<T> visitor) 以默认顺序(增加索引)访问(但不更改)此向量的所有条目。walkInDefaultOrder
(FieldVectorPreservingVisitor<T> visitor, int start, int end) 以默认顺序(增加索引)访问(但不更改)此向量的一些条目。walkInOptimizedOrder
(FieldVectorChangingVisitor<T> visitor) 以优化顺序访问(可能更改)此向量的所有条目。walkInOptimizedOrder
(FieldVectorChangingVisitor<T> visitor, int start, int end) 以优化顺序访问(可能更改)此向量的一些条目。以优化顺序访问(但不更改)此向量的所有条目。walkInOptimizedOrder
(FieldVectorPreservingVisitor<T> visitor, int start, int end) 以优化顺序访问(但不更改)此向量的一些条目。
-
构造器详细资料
-
ArrayFieldVector
构建长度为0的向量。可以使用长度为零的向量来初始化通过数据收集构建向量。我们从零长度开始,使用ArrayFieldVector(FieldVector, FieldVector)
构造函数或append
方法之一(add(FieldVector)
或append(ArrayFieldVector)
)将数据收集到此向量中。- 参数:
-
field
- 元素所属的字段
-
ArrayFieldVector
构造零向量。- 参数:
-
field
- 元素所属的字段 -
size
- 向量的大小
-
ArrayFieldVector
构造具有预设值的向量。- 参数:
-
size
- 向量的大小 -
preset
- 所有条目将设置为此值
-
ArrayFieldVector
从数组构造向量,复制输入数组。此构造函数需要一个非空的d
数组来从其第一个元素中检索字段。这意味着它不能构建长度为0的向量。要从任何大小构建向量,应使用ArrayFieldVector(Field, FieldElement[])
构造函数。- 参数:
-
d
- 数组 - 抛出:
-
NullArgumentException
- 如果d
为null
-
MathIllegalArgumentException
- 如果d
为空 - 另请参阅:
-
ArrayFieldVector
从数组构造向量,复制输入数组。- 参数:
-
field
- 元素所属的字段 -
d
- 数组 - 抛出:
-
NullArgumentException
- 如果d
为null
- 另请参阅:
-
ArrayFieldVector
public ArrayFieldVector(T[] d, boolean copyArray) throws MathIllegalArgumentException, NullArgumentException 使用输入数组作为基础数据数组创建一个新的ArrayFieldVector。如果一个数组是特别构建的,以便嵌入到ArrayFieldVector中而不是直接使用,则可以将copyArray
设置为false
。这将防止复制并提高性能,因为不会构建新数组,也不会复制数据。此构造函数需要一个非空的d
数组来从其第一个元素中检索字段。这意味着它不能构建长度为0的向量。要从任何大小构建向量,应该使用ArrayFieldVector(Field, FieldElement[], boolean)
构造函数。- 参数:
-
d
- 新向量的数据。 -
copyArray
- 如果为true
,则将复制输入数组,否则将引用它。 - 抛出:
-
NullArgumentException
- 如果d
为null
。 -
MathIllegalArgumentException
- 如果d
为空。 - 另请参阅:
-
ArrayFieldVector
使用输入数组作为基础数据数组创建一个新的ArrayFieldVector。如果一个数组是特别构建的,以便嵌入到ArrayFieldVector中而不是直接使用,则可以将copyArray
设置为false
。这将防止复制并提高性能,因为不会构建新数组,也不会复制数据。- 参数:
-
field
- 元素所属的字段。 -
d
- 新向量的数据。 -
copyArray
- 如果为true
,则将复制输入数组,否则将引用它。 - 抛出:
-
NullArgumentException
- 如果d
为null
。
-
ArrayFieldVector
public ArrayFieldVector(T[] d, int pos, int size) throws MathIllegalArgumentException, NullArgumentException 从数组的一部分构造向量。- 参数:
-
d
- 数组。 -
pos
- 第一个条目的位置。 -
size
- 要复制的条目数。 - 抛出:
-
NullArgumentException
- 如果d
为null
。 -
MathIllegalArgumentException
- 如果d
的大小小于pos + size
。
-
ArrayFieldVector
public ArrayFieldVector(Field<T> field, T[] d, int pos, int size) throws MathIllegalArgumentException, NullArgumentException 从数组的一部分构造向量。- 参数:
-
field
- 元素所属的字段。 -
d
- 数组。 -
pos
- 第一个条目的位置。 -
size
- 要复制的条目数。 - 抛出:
-
NullArgumentException
- 如果d
为null
。 -
MathIllegalArgumentException
- 如果d
的大小小于pos + size
。
-
ArrayFieldVector
使用深度复制从另一个向量构造向量。- 参数:
-
v
- 要复制的向量。 - 抛出:
-
NullArgumentException
- 如果v
为null
。
-
ArrayFieldVector
使用深度复制从另一个向量构造向量。- 参数:
-
v
- 要复制的向量。 - 抛出:
-
NullArgumentException
- 如果v
为null
。
-
ArrayFieldVector
从另一个向量构造向量。- 参数:
-
v
- 要复制的向量。 -
deep
- 如果为true
执行深度复制,否则执行浅复制 - 抛出:
-
NullArgumentException
- 如果v
为null
。
-
ArrayFieldVector
通过将一个向量附加到另一个向量来构造向量。- 参数:
-
v1
- 第一个向量(将放在新向量的前面)。 -
v2
- 第二个向量(将放在新向量的后面)。 - 抛出:
-
NullArgumentException
- 如果v1
或v2
为null
。
-
ArrayFieldVector
通过将一个向量附加到另一个向量来构造向量。- 参数:
-
v1
- 第一个向量(将放在新向量的前面)。 -
v2
- 第二个向量(将放在新向量的后面)。 - 抛出:
-
NullArgumentException
- 如果v1
或v2
为null
。
-
ArrayFieldVector
通过将一个向量附加到另一个向量来构造向量。- 参数:
-
v1
- 第一个向量(将放在新向量的前面)。 -
v2
- 第二个向量(将放在新向量的后面)。 - 抛出:
-
NullArgumentException
- 如果v1
或v2
为null
。
-
ArrayFieldVector
通过将一个向量附加到另一个向量来构造向量。此构造函数需要至少一个非空数组来从其第一个元素中检索字段。这意味着它不能构建长度为0的向量。要从任何大小构建向量,应该使用ArrayFieldVector(Field, FieldElement[], FieldElement[])
构造函数。- 参数:
-
v1
- 第一个向量(将放在新向量的前面)。 -
v2
- 第二个向量(将放在新向量的后面)。 - 抛出:
-
NullArgumentException
- 如果v1
或v2
为null
。 -
MathIllegalArgumentException
- 如果两个数组都为空。 - 另请参阅:
-
ArrayFieldVector
public ArrayFieldVector(Field<T> field, T[] v1, T[] v2) throws MathIllegalArgumentException, NullArgumentException 通过将一个向量附加到另一个向量来构造向量。- 参数:
-
field
- 元素所属的字段。 -
v1
- 第一个向量(将放在新向量的前面)。 -
v2
- 第二个向量(将放在新向量的后面)。 - 抛出:
-
NullArgumentException
- 如果v1
或v2
为null
。 -
MathIllegalArgumentException
- 如果两个数组都为空。 - 另请参阅:
-
-
方法详细资料
-
getField
获取向量的字段元素类型。- 指定者:
-
getField
在接口中FieldVector<T extends FieldElement<T>>
- 返回:
- 向量的字段元素类型
-
copy
返回此向量的(深度)复制。- 指定者:
-
copy
在接口中FieldVector<T extends FieldElement<T>>
- 返回:
- 向量的复制
-
add
计算this
和v
的和。- 指定者:
-
add
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 要相加的向量 - 返回:
-
this + v
- 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
add
计算this
和v
的和。- 参数:
-
v
- 要相加的向量 - 返回:
-
this + v
- 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
subtract
计算this
减去v
。- 指定者:
-
subtract
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 要减去的向量 - 返回:
-
this - v
- 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
subtract
计算this
减去v
。- 参数:
-
v
- 要减去的向量 - 返回:
-
this - v
- 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
mapAdd
将加法操作映射到每个条目。- 指定者:
-
mapAdd
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要添加到每个条目的值 - 返回:
-
this + d
- 抛出:
-
NullArgumentException
- 如果d
为null
-
mapAddToSelf
将加法操作映射到每个条目。此方法会更改实例。
- 指定者:
-
mapAddToSelf
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要添加到每个条目的值 - 返回:
-
为方便起见,返回
this
- 抛出:
-
NullArgumentException
- 如果d
为null
-
mapSubtract
将减法操作映射到每个条目。- 指定者:
-
mapSubtract
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要减去的值 - 返回:
-
this - d
- 抛出:
-
NullArgumentException
- 如果d
为null
-
mapSubtractToSelf
将减法操作映射到每个条目。此方法会更改实例。
- 指定者:
-
mapSubtractToSelf
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要减去的值 - 返回:
-
为方便起见,返回
this
- 抛出:
-
NullArgumentException
- 如果d
为null
-
mapMultiply
将乘法操作映射到每个条目。- 指定者:
-
mapMultiply
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要将所有条目乘以的值 - 返回:
-
this * d
- 抛出:
-
NullArgumentException
- 如果d
为null
-
mapMultiplyToSelf
将乘法操作映射到每个条目。此方法会更改实例。
- 指定者:
-
mapMultiplyToSelf
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要将所有条目乘以的值 - 返回:
-
为方便起见,返回
this
- 抛出:
-
NullArgumentException
- 如果d
为null
-
mapDivide
将除法操作映射到每个条目。- 指定者:
-
mapDivide
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要将所有条目除以的值 - 返回:
-
this / d
- 抛出:
-
NullArgumentException
- 如果d
为null
-
MathRuntimeException
- 如果d
为零
-
mapDivideToSelf
将除法操作映射到每个条目。此方法会更改实例。
- 指定者:
-
mapDivideToSelf
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
d
- 要将所有条目除以的值 - 返回:
-
为方便起见,返回
this
- 抛出:
-
NullArgumentException
- 如果d
为null
-
MathRuntimeException
- 如果d
为零
-
mapInv
将1/x函数映射到每个条目。- 指定者:
-
mapInv
在接口中FieldVector<T extends FieldElement<T>>
- 返回:
- 包含将该函数应用于每个条目的结果的向量。
- 抛出:
-
MathRuntimeException
- 如果其中一个条目为零
-
mapInvToSelf
将1/x函数映射到每个条目。此方法会更改实例。
- 指定者:
-
mapInvToSelf
在接口中FieldVector<T extends FieldElement<T>>
- 返回:
-
为方便起见,返回
this
- 抛出:
-
MathRuntimeException
- 如果其中一个条目为零
-
ebeMultiply
逐元素相乘。- 指定者:
-
ebeMultiply
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 必须将实例元素乘以的向量 - 返回:
-
包含所有
i
的this[i] * v[i]
的向量 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
ebeMultiply
Element-by-element multiplication.- 参数:
-
v
- 实例元素必须乘以的向量 - 返回:
-
包含所有
i
的this[i] * v[i]
的向量 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
ebeDivide
public FieldVector<T> ebeDivide(FieldVector<T> v) throws MathIllegalArgumentException, MathRuntimeException 逐元素除法。- 指定者:
-
ebeDivide
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 实例元素必须除以的向量 - 返回:
-
包含所有
i
的this[i] / v[i]
的向量 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同 -
MathRuntimeException
- 如果v
的一个条目为零。
-
ebeDivide
public ArrayFieldVector<T> ebeDivide(ArrayFieldVector<T> v) throws MathIllegalArgumentException, MathRuntimeException 逐元素除法。- 参数:
-
v
- 实例元素必须除以的向量 - 返回:
-
包含所有
i
的this[i] / v[i]
的向量 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同 -
MathRuntimeException
- 如果v
的一个条目为零。
-
getDataRef
返回对底层数据数组的引用。不会对底层数据进行新的复制。
- 返回:
- 条目数组
-
dotProduct
计算点积。- 指定者:
-
dotProduct
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 应计算点积的向量 - 返回:
-
this
和v
的标量点积 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
dotProduct
计算点积。- 参数:
-
v
- 应计算点积的向量 - 返回:
-
this
和v
的标量点积 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同
-
projection
public FieldVector<T> projection(FieldVector<T> v) throws MathIllegalArgumentException, MathRuntimeException 找到此向量在另一个向量上的正交投影。- 指定者:
-
projection
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 必须投影到this
上的向量 - 返回:
-
this
在v
上的投影 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同 -
MathRuntimeException
- 如果v
是零向量。
-
projection
public ArrayFieldVector<T> projection(ArrayFieldVector<T> v) throws MathIllegalArgumentException, MathRuntimeException 找到此向量在另一个向量上的正交投影。- 参数:
-
v
- 必须投影到this
上的向量 - 返回:
-
this
在v
上的投影 - 抛出:
-
MathIllegalArgumentException
- 如果v
的大小与this
不同 -
MathRuntimeException
- 如果v
是零向量。
-
outerProduct
计算外积。- 指定者:
-
outerProduct
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 应计算外积的向量 - 返回:
- 实例和 v 之间的矩阵外积
-
outerProduct
计算外积。- 参数:
-
v
- 应计算外积的向量 - 返回:
- 实例和 v 之间的矩阵外积
-
getEntry
返回指定索引处的条目。- 指定者:
-
getEntry
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
index
- 要获取的条目的索引位置。 - 返回:
-
在
index
处的向量条目。 - 另请参阅:
-
getDimension
public int getDimension()返回向量的大小。- 指定者:
-
getDimension
在接口中FieldVector<T extends FieldElement<T>>
- 返回:
- 大小
-
append
通过将向量附加到此向量来构造向量。- 指定者:
-
append
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
v
- 要附加到此向量的向量。 - 返回:
- 一个新的向量
-
append
通过将向量附加到此向量来构造向量。- 参数:
-
v
- 要附加到此向量的向量。 - 返回:
- 一个新的向量
-
append
通过将 T 附加到此向量来构造向量。- 指定者:
-
append
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
in
- 要附加的 T。 - 返回:
- 一个新的向量
-
getSubVector
获取连续元素的子向量。- 指定者:
-
getSubVector
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
index
- 第一个元素的索引。 -
n
- 要检索的元素数量。 - 返回:
- 包含 n 个元素的向量。
- 抛出:
-
MathIllegalArgumentException
- 如果索引无效。 -
MathIllegalArgumentException
- 如果元素数量不是正数。
-
setEntry
设置单个元素。- 指定者:
-
setEntry
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
index
- 元素索引。 -
value
- 元素的新值。 - 另请参阅:
-
setSubVector
设置一组连续的元素。- 指定者:
-
setSubVector
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
index
- 要设置的第一个元素的索引。 -
v
- 包含要设置的值的向量。 - 抛出:
-
MathIllegalArgumentException
- 如果索引无效。
-
set
设置一组连续的元素。- 参数:
-
index
- 要设置的第一个元素的索引。 -
v
- 包含要设置的值的向量。 - 抛出:
-
MathIllegalArgumentException
- 如果索引无效。
-
set
将所有元素设置为单个值。- 指定者:
-
set
在接口中FieldVector<T extends FieldElement<T>>
- 参数:
-
value
- 要为所有元素设置的单个值
-
toArray
将向量转换为 T 数组。数组与向量数据无关,其元素被复制。
- 指定者:
-
toArray
在接口中FieldVector<T extends FieldElement<T>>
- 返回:
- 包含向量元素副本的数组
-
checkVectorDimensions
检查实例和指定向量是否具有相同的维度。- 参数:
-
v
- 用于与实例比较的向量 - 抛出:
-
MathIllegalArgumentException
- 如果向量的维度不相同
-
checkVectorDimensions
检查实例维度是否等于某个预期值。- 参数:
-
n
- 预期维度。 - 抛出:
-
MathIllegalArgumentException
- 如果维度不等于this
向量的大小。
-
walkInDefaultOrder
访问(但不更改)此向量的所有条目,按默认顺序(索引递增)。- 参数:
-
visitor
- 用于处理此向量条目的访问者 - 返回:
-
在遍历结束时由
FieldVectorPreservingVisitor.end()
返回的值
-
walkInDefaultOrder
public T walkInDefaultOrder(FieldVectorPreservingVisitor<T> visitor, int start, int end) throws MathIllegalArgumentException 访问(但不更改)此向量的某些条目,按默认顺序(索引递增)。- 参数:
-
visitor
- 用于处理此向量条目的访问者 -
start
- 要访问的第一个条目的索引 -
end
- 要访问的最后一个条目的索引(包括在内) - 返回:
-
在遍历结束时由
FieldVectorPreservingVisitor.end()
返回的值 - 抛出:
-
MathIllegalArgumentException
- 如果end < start
。 -
MathIllegalArgumentException
- 如果索引无效。
-
walkInOptimizedOrder
访问(但不更改)此向量的所有条目,按优化顺序。选择访问条目的顺序以导致最有效的实现;这可能取决于此抽象类的具体实现。- 参数:
-
visitor
- 用于处理此向量条目的访问者 - 返回:
-
在遍历结束时由
FieldVectorPreservingVisitor.end()
返回的值
-
walkInOptimizedOrder
public T walkInOptimizedOrder(FieldVectorPreservingVisitor<T> visitor, int start, int end) throws MathIllegalArgumentException 访问(但不更改)此向量的某些条目,按优化顺序。选择访问条目的顺序以导致最有效的实现;这可能取决于此抽象类的具体实现。- 参数:
-
visitor
- 用于处理此向量条目的访问者 -
start
- 要访问的第一个条目的索引 -
end
- 要访问的最后一个条目的索引(包括在内) - 返回:
-
在遍历结束时由
FieldVectorPreservingVisitor.end()
返回的值 - 抛出:
-
MathIllegalArgumentException
- 如果end < start
。 -
MathIllegalArgumentException
- 如果索引无效。
-
walkInDefaultOrder
访问(并可能更改)此向量的所有条目,按默认顺序(索引递增)。- 参数:
-
visitor
- 用于处理和修改此向量条目的访问者 - 返回:
-
在遍历结束时由
FieldVectorChangingVisitor.end()
返回的值
-
walkInDefaultOrder
public T walkInDefaultOrder(FieldVectorChangingVisitor<T> visitor, int start, int end) throws MathIllegalArgumentException 访问(并可能更改)此向量的某些条目,按默认顺序(索引递增)。- 参数:
-
visitor
- 用于处理此向量条目的访问者 -
start
- 要访问的第一个条目的索引 -
end
- 要访问的最后一个条目的索引(包括在内) - 返回:
-
在遍历结束时由
FieldVectorChangingVisitor.end()
返回的值 - 抛出:
-
MathIllegalArgumentException
- 如果end < start
。 -
MathIllegalArgumentException
- 如果索引无效。
-
walkInOptimizedOrder
访问(并可能更改)此向量的所有条目,按优化顺序。选择访问条目的顺序以导致最有效的实现;这可能取决于此抽象类的具体实现。- 参数:
-
visitor
- 用于处理此向量条目的访问者 - 返回:
-
在遍历结束时由
FieldVectorChangingVisitor.end()
返回的值
-
walkInOptimizedOrder
public T walkInOptimizedOrder(FieldVectorChangingVisitor<T> visitor, int start, int end) throws MathIllegalArgumentException 访问(并可能更改)此向量的某些条目,按优化顺序。选择访问条目的顺序以导致最有效的实现;这可能取决于此抽象类的具体实现。- 参数:
-
visitor
- 用于处理此向量条目的访问者 -
start
- 要访问的第一个条目的索引 -
end
- 要访问的最后一个条目的索引(包括在内) - 返回:
-
在遍历结束时由
FieldVectorChangingVisitor.end()
返回的值 - 抛出:
-
MathIllegalArgumentException
- 如果end < start
。 -
MathIllegalArgumentException
- 如果索引无效。
-
toString
-
equals
测试两个向量是否相等。 -
hashCode
public int hashCode()获取实向量的哈希码。所有NaN值具有相同的哈希码。
-