0
我有一個obj[,]
其組件都是float
s。我想將它轉換爲float[,]
。我嘗試了box
,unbox
,Array2D.map float
,Array2D.copy
, System.Convert.ChangeType
等許多排列,似乎沒有任何工作。如何進行?F#cast obj [,]浮動[,]
我有一個obj[,]
其組件都是float
s。我想將它轉換爲float[,]
。我嘗試了box
,unbox
,Array2D.map float
,Array2D.copy
, System.Convert.ChangeType
等許多排列,似乎沒有任何工作。如何進行?F#cast obj [,]浮動[,]
這似乎只是正常工作對我來說:
let boxedArray = Array2D.init 2 2 (fun x y -> box (float (x + y)))
let unboxedArray = boxedArray |> Array2D.map unbox<float>
printfn "%A" (boxedArray.GetType()) // System.Object[,]
printfn "%A" (unboxedArray.GetType()) // System.Double[,]
明白了。我正在嘗試'boxedArray |> unbox |> Array2D.map float',並得到一個運行時的'System.InvalidCastException' – kevinykuo
向我們展示你嘗試了一些代碼,並說明它是如何準確地不靈。是否有編譯器錯誤,運行時異常,意外輸出或其他? –