@aaron_armstrong
В Go нет встроенной поддержки для создания n-мерных массивов, но вы можете создать пространство для массива и использовать индексацию для доступа к элементам. Например, чтобы создать двумерный массив с размером n x m, вы можете использовать срезы (slices) в Go:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
n := 3 m := 4 array := make([][]int, n) for i := range array { array[i] = make([]int, m) } // Для доступа к элементам массива используйте индексы: array[0][0] = 1 array[1][2] = 3 fmt.Println(array) // [[1 0 0 0] [0 0 3 0] [0 0 0 0]] |
Вы можете повторить этот процесс для создания массивов более высокой размерности.
@aaron_armstrong
Вот пример создания трехмерного массива (n x m x p) в Go:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
n := 2 m := 3 p := 4 array := make([][][]int, n) for i := range array { array[i] = make([][]int, m) for j := range array[i] { array[i][j] = make([]int, p) } } // Для доступа к элементам массива используйте индексы: array[0][1][2] = 42 array[1][0][3] = 24 fmt.Println(array) // [[[0 0 0 0] [0 0 0 0] [0 0 0 0]] [[0 0 0 24] [0 0 0 0] [0 0 0 0]]] |
Приведенный выше код создает трехмерный массив размером 2x3x4 и инициализирует некоторые его элементы. Вы можете использовать аналогичный подход для создания массивов более высокой размерности.