2
A
回答
5
有兩個選項取決於是否您使用的實際2D陣列(矩形陣列)或鋸齒狀排列(一個數組,其元素是陣列,具有可能不同的長度):
如果你不確定使用哪一個,那麼最好知道鋸齒狀數組的速度更快,但使用矩形數組可能會更容易(因爲你確信這些尺寸)。
let foo (ar:bool[,]) = ar.[0, 0] // Get element at specified coordinates
let bar (ar:bool[][]) = ar.[0].[0] // Get first array and then the element
要調用兩個功能,可以使用下面的語法:
// Create array of arrays and call the function
bar [| [| true |] |]
// Creates array of arrays and converts it to multi-dimensional array
// You can also use plenty of functions from 'Array2D' module
foo (array2D [| [| true |] |])
如果你想寫的功能,這將是更普遍的,你也可以使用序列的序列。這將僅與鋸齒形陣列兼容,但您也可以使用例如F#列表或任何.NET集合類型的列表。
let woo (ar:seq<#seq<bool>>) = Seq.head (Seq.head ar)
#seq<..>
類型意味着它可以是序列或任何其他派生類型。這是元素類型所需要的,但不適用於外部類型,因爲F#會自動轉換外部類型(但不包括元素)。
+0
這正是我想要的。很酷謝謝你! – maybettle 2011-04-11 06:31:07
相關問題
- 1. 將多維數組傳遞給函數
- 2. 將多維數組傳遞給函數?
- 3. 將多維數組傳遞給函數
- 4. 如何將二維數組傳遞給F#中的函數?
- 5. 將多維數組傳遞給Javascript
- 6. 將未知大小的多維數組傳遞給函數
- 7. 將多維JSON數組傳遞給jQuery函數
- 8. 如何將多維數組傳遞給函數?
- 9. 將多維數組傳遞給函數C
- 10. 如何將多維指針數組傳遞給函數?
- 11. 如何將多維數組傳遞給函數?
- 12. 將多維數組傳遞給函數(C++)?
- 13. 將多維數組傳遞給函數C
- 14. 將多維數組傳遞給函數C
- 15. 傳遞多維數組作爲函數參數給出錯誤
- 16. 將二維數組傳遞給只有一維數組的函數(C++)
- 17. 將二維數組傳遞到函數
- 18. 將二維數組傳遞到函數
- 19. 將三維數組傳遞給C中的函數?
- 20. C - 將二維數組上的指針傳遞給函數
- 21. 將非動態2維數組傳遞給C中的函數?
- 22. C++將值傳遞給函數中的二維字符數組
- 23. 將二維數組傳遞給C中的函數
- 24. 將2維數組傳遞給函數的正確方法
- 25. 將二維數組傳遞給Rust中的函數
- 26. 將二維數組傳遞給函數的錯誤
- 27. 將多維數組傳遞給使用變量作爲參數的函數
- 28. 將數組傳遞給函數參數
- 29. VB:將二維數組傳遞給Sub
- 30. 將兩個二維數組傳遞給函數進行比較
Seq> abcdefg –
2011-04-10 21:43:06