类 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 voidcheckVectorDimensions(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) 从连续元素中获取子向量。inthashCode()获取实向量的哈希码。将加法操作映射到每个条目。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) 找到此向量在另一个向量上的正交投影。voidset(int index, ArrayFieldVector<T> v) 设置一组连续元素。void将所有元素设置为单个值。void设置单个元素。voidsetSubVector(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值具有相同的哈希码。
-