当我在 Julia 中定义一个数组时:
z = Array(Float64, 1)
似乎分配了一个随机值。有时它是 0.0,但大多数情况下它类似于 3.78692e-316。
这种行为是有意的吗?
以及如何用 10 个值初始化“常量”向量,例如
b = [2.0 2 2 2]
?
最佳答案
@waTeim 是正确的,在分配数组时,它没有初始化为 0 或任何特定值。
在 Julia 中分配和初始化具有特定值的新数组的方法是使用 fill()
所以对于您的 b
你会这样做:
b = fill(2.0, 10)
这给你:
10-element Array{Float64,1}:
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
或者,如果您想要一个行向量:
b = fill(2.0, 1, 10)
这给你
1x10 Array{Float64,2}:
2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
关于arrays - Julia 初始化数组/向量不是零而是随机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23903965/