Основы Go
Go Arrays
A fixed number of values of one type, and why assigning an array copies it.
Что вы узнаете
- [5]int and [...]int
- Arrays are values
- Arrays of arrays
var scores [5]int
720
01
02
03
644
Fixed size, copied on assignment
An array holds a fixed number of values of one type, and its length is part of its type. Arrays are less common than slices in Go, but slices are built on top of them.
[5]int starts with five zeros. [...] lets the compiler count the items. Assigning an array copies every item, so changing copyOfPrimes leaves primes alone. An array of arrays makes a grid.
Главное
- The length is part of the type.
- Assigning an array copies every item.
- Slices are built on arrays.
Пример на Go, который можно запустить
main.go
package main
import "fmt"
func main() {
var scores [5]int // fixed size, zero values
scores[0] = 72
scores[4] = 64
fmt.Println(scores, len(scores))
primes := [...]int{2, 3, 5, 7}
copyOfPrimes := primes // arrays are values: this copies all items
copyOfPrimes[0] = 99
fmt.Println(primes, copyOfPrimes)
grid := [2][3]int{{1, 2, 3}, {4, 5, 6}}
fmt.Println(grid[1][2], grid)
}
[72 0 0 0 64] 5
[2 3 5 7] [99 3 5 7]
6 [[1 2 3] [4 5 6]]Практика
Откройте пример в онлайн-компиляторе, измените значение или добавьте строку и попробуйте предсказать вывод до запуска. Затем намеренно сломайте код и прочитайте сообщение компилятора.
Закончили этот урок?
Отметьте его как изученный, чтобы следить за прогрессом.
Ваш прогресс сохранён в этом браузере Войдите, чтобы он был доступен на всех устройствах.
Попрактикуйтесь на задаче
Примените материал этого урока к реальной задаче. Каждая задача запускается в браузере, с мгновенными тестами и разбором от ИИ.
- Максимум в массиве Найдите наибольшее значение в списке. Легко
- Min and Max Together Find the smallest and largest value in one pass. Легко