第一次看朱莉娅
julia> x=[1 2 3];
julia> x[2]=3+5im
ERROR: InexactError()
in convert at complex.jl:18
in setindex! at array.jl:346
我确信这是因为julia打字系统不同。
朱莉娅如何做到这一点?
x=[1 2 3];
x(2)=3+5*1i
x =
1.0000 + 0.0000i 3.0000 + 5.0000i 3.0000 + 0.0000i
答案 0 :(得分:11)
您可以将x
设为复杂数组:
x=[1 2 3];
x=complex(x);
现在您可以执行此操作:
x[2]=3+5im;
这导致x
包含:
println(x)
输出:
1+0im 3+5im 3+0im
根据需要。
答案 1 :(得分:9)
你可能希望x很复杂。在这种情况下,您可以这样做:
x = Complex{Float64}[1, 2, 3]
这可以让你做你想做的事。您还可以将Float64更改为Int或Int64等其他内容。
另外,你应该在条目之后加上逗号来获得1维数组而不是2维数组,这就是你的目标。要找到类型,请执行此操作
typeof(x)
给出了
1x3 Array{Complex{Float64},1}:
1.0+0.0im 2.0+0.0im 3.0+0.0im
最后的1表示这是一维数组。