Создание срезов с помощью `make`
Часть раздела Основы путешествия по GO на Coddy — урок 76 из 109.
Функция make создает срезы с указанной длиной и емкостью.
Создайте срез целых чисел длиной 3:
numbers := make([]int, 3)
fmt.Println(numbers)Это выведет:
[0 0 0]Создайте срез длиной 2 и емкостью 5:
scores := make([]int, 2, 5)
fmt.Println(scores, len(scores), cap(scores))Отобразится следующее:
[0 0] 2 5Задание
НовичокВ этом испытании вы попрактикуетесь в создании среза с помощью функции make. Функция make позволяет создать срез с определенной длиной и емкостью.
Ваша задача — создать срез строк длиной 3 и емкостью 5 с помощью make, затем присвоить ему некоторые значения и вывести срез на экран.
После вывода среза вам также следует вывести его длину и емкость.
Шпаргалка
Функция make создает срезы с указанной длиной и емкостью.
Создание среза с указанной длиной:
numbers := make([]int, 3)
// Создает [0 0 0]Создание среза с длиной и емкостью:
scores := make([]int, 2, 5)
// Создает срез с длиной 2, емкостью 5Используйте len() и cap() для проверки свойств среза:
fmt.Println(scores, len(scores), cap(scores))
// Вывод: [0 0] 2 5Попробуйте сами
package main
import "fmt"
func main() {
// TODO: Создайте срез строк длиной 3 и емкостью 5, используя make
// var names = ...
// Присвоение значений срезу
names[0] = "Alice"
names[1] = "Bob"
names[2] = "Charlie"
// Печать среза
fmt.Println("Names:", names)
// Печать длины и емкости среза
fmt.Printf("Length: %d, Capacity: %d\n", len(names), cap(names))
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы сравнения и логические операторы
Операторы сравнения — Часть 1Операторы сравнения — Часть 2Логический оператор ANDЛогический оператор ORЛогический оператор NOTОсновы приоритета операторовИтоги: выполнение сравнений7Управляющие конструкции: Циклы
Что такое цикл `for`Цикл `for` — основыЦикл `for` — только условиеКлючевое слово `break`Ключевое слово `continue`Вложенные циклыИтоги — повторение действий2Переменные и базовые типы данных
Что такое переменнаяВывод типов с помощью `:=`Целые числа (int)Числа с плавающей точкойЛогический тип (Booleans)СтрокиНулевые значения (Zero Values)КонстантыПравила именованияИтоги: переменные и типы5Основы ввода-вывода
Форматированный выводСпецификаторы форматаВывод типовБазовый ввод данных пользователемИтоги: ввод и вывод8Функции
Понимание функцийОбъявление функцииВызов функцийПараметры функцииВозврат одного значенияВозврат нескольких значенийИменованные возвращаемые значенияОсновы области видимости функцийИтоги — создание переиспользуемого кода11Составные типы: Срезы
Введение в срезыОбъявление литералов срезовСоздание срезов с помощью `make`Длина и емкость срезаДоступ к элементам срезаДобавление элементовПолучение срезов из существующих срезов/массивовИтерация по срезамКопирование срезовИтоги: Динамические списки3Базовые операторы
Арифметические операторыОператор деленияОператор остатка от деленияОператор присваиванияКомбинированные операторы присваиванияИнкремент и декрементПовторение — Вычисления6Управление потоком: Условные конструкции
Оператор `if`Ключевое слово `else`Ключевое слово `else if`Затенение переменных в `if`Инициализация переменныхОператор `switch`Switch с выражениямиSwitch без выраженийКлючевое слово `fallthrough`Итоги — Принятие решений