サーチ…


構文

  • sub2ind(dims :: Tuple {Vararg {Integer}}、I :: Integer ...)
  • sub2ind {T <:Integer}(dims :: Tuple {Vararg {Integer}}、I :: AbstractArray {T <:整数、1} ...)

パラメーター

パラメータ詳細
dims :: Tuple {Vararg {Integer}} 配列のサイズ
I ::整数... 配列の添え字(スカラー)
I :: AbstractArray {T <:整数、1} ... 配列の添字(ベクトル)

備考

2番目の例では、 sub2indの結果が特定のケースで非常にバグがある可能性があることを示しています。

添え字を線形インデックスに変換する

julia> sub2ind((3,3), 1, 1)
1

julia> sub2ind((3,3), 1, 2)
4

julia> sub2ind((3,3), 2, 1)
2

julia> sub2ind((3,3), [1,1,2], [1,2,1])
3-element Array{Int64,1}:
 1
 4
 2

ピット&フォールズ

# no error, even the subscript is out of range.
julia> sub2ind((3,3), 3, 4)
12

インデックスを比較することによって添字が配列の範囲にあるかどうかを判断することはできません:

julia> sub2ind((3,3), -1, 2)
2

julia> 0 < sub2ind((3,3), -1, 2) <= 9
true


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow