为什么 Double 不浮动
Why Double not Float
为什么推断类型是 Double 而不是 Float?
final Array1D<Double> doubles = Array1D.factory(Primitive32Array.FACTORY).makeFilled(10, new Uniform());
换句话说,Primitive32Array.FACTORY
和Primitive64Array.FACTORY
有什么区别?
这是历史原因。 ojAlgo 最初不支持 float arrays/matrices,并且 <Double>
自然总是指底层的 double[].
现在 ojAlgo 部分支持 float[],但仅作为 space 保存 "primitive" 数组。 Primitive32Array
(作为示例)内部的所有内容都是 float 和 float[],但它的 API 仍然是 <Double>
。
在 ojAlgo 中 <Double>
本质上意味着 "primitive".
考虑完全支持浮点数(用于矩阵和线性代数)。发生 <Double>
的 When/if 可能会被 <Number>
替换以表示任何 "primitive".
为什么推断类型是 Double 而不是 Float?
final Array1D<Double> doubles = Array1D.factory(Primitive32Array.FACTORY).makeFilled(10, new Uniform());
换句话说,Primitive32Array.FACTORY
和Primitive64Array.FACTORY
有什么区别?
这是历史原因。 ojAlgo 最初不支持 float arrays/matrices,并且 <Double>
自然总是指底层的 double[].
现在 ojAlgo 部分支持 float[],但仅作为 space 保存 "primitive" 数组。 Primitive32Array
(作为示例)内部的所有内容都是 float 和 float[],但它的 API 仍然是 <Double>
。
在 ojAlgo 中 <Double>
本质上意味着 "primitive".
考虑完全支持浮点数(用于矩阵和线性代数)。发生 <Double>
的 When/if 可能会被 <Number>
替换以表示任何 "primitive".