切片的切片 [][]T
切片的切片
切片可包含任何类型,甚至包括其它的切片。
package main import ( "fmt" "strings" ) func main() { // 创建一个井字板(经典游戏) board := [][]string{ []string{"", "", ""}, []string{"", "", ""}, []string{"", "", "_"}, } // 两个玩家轮流打上 X 和 O board[0][0] = "X" board[2][2] = "O" board[1][2] = "X" board[1][0] = "O" board[0][2] = "X" for i := 0; i < len(board); i++ { fmt.Printf("%s\n", strings.Join(board[i], " ")) } } //结果 X _ X O _ X _ _ O
x
1 package
main 2 3 import ( 4
"fmt" 5
"strings" 6 ) 7 8 func
main () { 9
// 创建一个井字板(经典游戏) 10
board :
[][] string { 11
[] string { "" , "" , "_" }, 12
[] string { "" , "" , "_" }, 13
[] string { "" , "" , "_" }, 14
} 15 16
// 两个玩家轮流打上 X 和 O 17
board [ 0 ][ 0 ]
"X" 18
board [ 2 ][ 2 ]
"O" 19
board [ 1 ][ 2 ]
"X" 20
board [ 1 ][ 0 ]
"O" 21
board [ 0 ][ 2 ]
"X" 22 23
for
i :
0 ; i
<
len ( board ); i ++ { 24
fmt . Printf ( "%s\n" , strings . Join ( board [ i ], " " )) 25
} 26 } 27 28 //结果 29 X
_
X 30 O
_
X 31 _
_
O