Массивы в Go — это последовательности элементов одного типа фиксированного размера. Вот некоторые методы и операции, обычно используемые с массивами в Go, а также примеры кода:
-
Объявление и инициализация:
var arr [5]int // Declaration of an integer array with length 5 arr := [3]string{"apple", "banana"} // Declaration and initialization of a string array with length 3
-
Доступ к элементам:
fmt.Println(arr[0]) // Accessing the first element of the array arr[2] = 42 // Modifying the value of the third element
-
Длина и вместимость:
length := len(arr) // Getting the length of the array capacity := cap(arr) // Getting the capacity of the array (same as length for arrays)
-
Итерация по массиву:
for i := 0; i < len(arr); i++ { // Looping through the array using a traditional for loop fmt.Println(arr[i]) } for index, value := range arr { // Looping through the array using range fmt.Println(index, value) }
-
Сравнение массивов:
arr1 := [3]int{1, 2, 3} arr2 := [3]int{1, 2, 3} equal := arr1 == arr2 // Comparing if two arrays are equal
-
Передача массивов в функции:
func modifyArray(arr *[5]int) { // Modify the array } func main() { arr := [5]int{1, 2, 3, 4, 5} modifyArray(&arr) // Passing the array by reference fmt.Println(arr) }
-
Разрез массива:
slice := arr[1:3] // Creating a slice from the array
-
Сортировка массива:
sort.Ints(arr[:]) // Sorting an array of integers in ascending order
-
Реверс массива:
for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 { arr[i], arr[j] = arr[j], arr[i] }