Go 在地图中,即使我可以打印值,为什么我不能更改它?
值未更改,错误消息-无法分配给数独[1][0]Go 在地图中,即使我可以打印值,为什么我不能更改它?,go,variables,memory-management,hashmap,dynamic-memory-allocation,Go,Variables,Memory Management,Hashmap,Dynamic Memory Allocation,值未更改,错误消息-无法分配给数独[1][0] sudoku[1][0]是一个int,不能附加到int,只能附加到片段。另外,[9]int是一个,而不是一个 您很可能希望更改元素,而不是附加到元素,因此请使用简单的: 这将输出(在上尝试): 如果您对基础知识不清楚,强烈建议您选择 var sudoku = map[int][9]int{ // map of 9 x 9 0: {3, 0, 6, 5, 0, 8, 4, 0, 0}, 1: {5, 2, 0, 0, 0, 0,
sudoku[1][0]
是一个int
,不能附加到int
,只能附加到片段。另外,[9]int
是一个,而不是一个
您很可能希望更改元素,而不是附加到元素,因此请使用简单的:
这将输出(在上尝试):
如果您对基础知识不清楚,强烈建议您选择
var sudoku = map[int][9]int{ // map of 9 x 9
0: {3, 0, 6, 5, 0, 8, 4, 0, 0},
1: {5, 2, 0, 0, 0, 0, 0, 0, 0},
2: {0, 8, 7, 0, 0, 0, 0, 3, 1},
3: {0, 0, 3, 0, 1, 0, 0, 8, 0},
4: {9, 0, 0, 8, 6, 3, 0, 0, 5},
5: {0, 5, 0, 0, 9, 0, 6, 0, 0},
6: {1, 3, 0, 0, 0, 0, 2, 5, 0},
7: {0, 0, 0, 0, 0, 0, 0, 7, 4},
8: {0, 0, 5, 2, 0, 6, 3, 0, 0},
}
fmt.Println("Old value:", sudoku[1][0])
sudoku[1][0] = append(sudoku[1][0],10)
fmt.Println("New value:", sudoku[1][0])
sudoku[1][0] = 10
Old value: 5
New value: 10