没有方法匹配setindex:尝试更改矩阵值

mas*_*her 6 julia

使用Julia,我已经定义了一个9x10的零矩阵,我试图改变一个条目,但是我得到了错误 'setindex!' has no method matching setindex!(::Float64, ::Float64, ::Int64)

我的代码是:

m = zeros(9,10)
m[1][1] = 1.0
Run Code Online (Sandbox Code Playgroud)

错误指向第二行.typeof(m)是一个Array{Float64,2},据我所知是可变的.

我在这做错了什么?

Vin*_*ynd 11

要索引二维数组,只需使用m[1,1].

该语法m[1][1]对于1维数组的1维数组有效.

m = zeros(9,10)
m[1,1] = 1.0

m = Array[ [1,2], [3,4,5] ]
m[1][1]
Run Code Online (Sandbox Code Playgroud)

  • `getindex`方法是为Number类型定义的:`getindex(x :: Number,i :: Integer)= i == 1?x:throw(BoundsError())`因此语法m [ind] [1]在用于获取值时有效.但是对于`setindex!'来说并不是这样 (3认同)