Xan*_*kar 5 printf f# multidimensional-array
我正在制作一款名为Neutron的棋盘游戏.
let boardArray = array2D [ ["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
["*"; "1"; "*"; "2"; "*"; "3"; "*"; "4"; "*"; "5"; "*"];
["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
["*"; "0"; "*"; "0"; "*"; "0"; "*"; "0"; "*"; "0"; "*"];
["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
["*"; "0"; "*"; "0"; "*"; "N"; "*"; "0"; "*"; "0"; "*"];
["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
["*"; "0"; "*"; "0"; "*"; "0"; "*"; "0"; "*"; "0"; "*"];
["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
["*"; "A"; "*"; "B"; "*"; "C"; "*"; "D"; "*"; "E"; "*"];
["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"] ]
Run Code Online (Sandbox Code Playgroud)
我有这个字符串数组.我的问题是,我该如何打印这样的数组呢?
我最初的想法是使用嵌套的for循环打印出一些boardArray.[row, column]
,但是,根据我的理解,该row
项目
for row in boardArray do
属于obj; 我无法完全通过一个需要int的obj.我可以使用转换吗?我应该使用不同的方法?我是否严重误解了每个循环使用F#?
通过使用 for..to 循环解决:
let initiateBoard =
for r = 0 to Array2D.length1 boardArray - 1 do
for c = 0 to Array2D.length2 boardArray - 1 do
printfn "%A " boardArray.[r, c]
Run Code Online (Sandbox Code Playgroud)
这将在新行上打印出每个元素,因此除此之外还需要一个单独的函数来处理间距。