Манипуляция массивами в Golang

Beginner

This tutorial is from open-source community. Access the source code

Введение

Этот лаба проверит ваше понимание массивов в Golang. Вам потребуется создать и манипулировать массивами различных типов.

Массивы

Вам необходимо создать массив целых чисел длиной 5. Затем вы будете задавать значение по определенному индексу и получать значение из определенного индекса. Также вам потребуется определить длину массива и объявить и инициализировать массив в одну строку. Наконец, вы создадите двухмерный массив и инициализируете его значениями.

  • Создать массив целых чисел длиной 5
  • Задайте значение по определенному индексу и получите значение из определенного индекса
  • Определите длину массива
  • Объявите и инициализируйте массив в одну строку
  • Создайте двухмерный массив и инициализируйте его значениями
## Обратите внимание, что массивы выводятся в форме `[v1 v2 v3...]`,
## когда выводятся с помощью `fmt.Println`.
$ go run arrays.go
emp: [0 0 0 0 0]
set: [0 0 0 0 100]
get: 100
len: 5
dcl: [1 2 3 4 5]
2d: [[0 1 2] [1 2 3]]

Ниже представлен полный код:

// В Go _массив_ — это упорядоченная последовательность элементов
// определенной длины. В типичном коде на Go [слайсы](slices)
// гораздо более распространены; массивы полезны в некоторых
// особых случаях.

package main

import "fmt"

func main() {

    // Здесь мы создаем массив `a`, который будет содержать
    // ровно 5 `int`. Тип элементов и длина являются частью
    // типа массива. По умолчанию массив инициализируется
    // нулями, что для `int` означает `0`.
    var a [5]int
    fmt.Println("emp:", a)

    // Мы можем задать значение по индексу с помощью
    // синтаксиса `array[index] = value`, и получить значение
    // с помощью `array[index]`.
    a[4] = 100
    fmt.Println("set:", a)
    fmt.Println("get:", a[4])

    // Встроенная функция `len` возвращает длину массива.
    fmt.Println("len:", len(a))

    // Используйте этот синтаксис, чтобы объявить и инициализировать
    // массив в одну строку.
    b := [5]int{1, 2, 3, 4, 5}
    fmt.Println("dcl:", b)

    // Типы массивов одномерны, но вы можете комбинировать типы,
    // чтобы создать многомерные структуры данных.
    var twoD [2][3]int
    for i := 0; i < 2; i++ {
        for j := 0; j < 3; j++ {
            twoD[i][j] = i + j
        }
    }
    fmt.Println("2d: ", twoD)
}

Резюме

В этом лабе вы узнали, как создавать и манипулировать массивами в Golang. Вы узнали, как задавать и получать значения из конкретных индексов, определять длину массива, объявлять и инициализировать массив в одну строку, а также создавать двухмерный массив и инициализировать его значениями.