Menu
Coddy logo textTech

Инициализация структур

Часть раздела Основы путешествия по GO на Coddy — урок 98 из 109.

Существует несколько способов инициализации структур в Go. Давайте рассмотрим наиболее распространенные методы.

Создайте структуру с именами полей:

type Person struct {
    name string
    age  int
}

func main() {
    // Инициализация с именами полей
    person1 := Person{name: "Alice", age: 30}
    fmt.Println(person1)
}

Вывод показывает нашу инициализированную структуру:

{Alice 30}

Вы также можете инициализировать структуру без имен полей, но вы должны указывать значения по порядку:

person2 := Person{"Bob", 25}
fmt.Println(person2)

Результат:

{Bob 25}

Создайте пустую структуру с нулевыми значениями:

person3 := Person{}
fmt.Println(person3)

Результат:

{  0}
challenge icon

Задание

Новичок

В этом испытании вы попрактикуетесь в инициализации структуры в Go. Мы определили структуру Person с полями для имени, возраста и информации о том, трудоустроен ли человек.

Ваша задача — инициализировать новый экземпляр структуры Person со следующей информацией:

  • Name: "Alice"
  • Age: 28
  • IsEmployed: true

Затем мы выведем информацию об этом человеке.

Шпаргалка

Существует несколько способов инициализации структур в Go:

Инициализация с именами полей:

person1 := Person{name: "Alice", age: 30}

Инициализация без имен полей (значения должны быть по порядку):

person2 := Person{"Bob", 25}

Создание пустой структуры со значениями по умолчанию:

person3 := Person{}

Попробуйте сами

package main

import "fmt"

// Определение структуры Person
type Person struct {
	Name       string
	Age        int
	IsEmployed bool
}

func main() {
	// TODO: Инициализируйте структуру Person с именем "Alice", возрастом 28 и isEmployed true
	// Используйте либо имена полей, либо синтаксис литерала структуры
	var alice Person
	
	// Вывод информации о человеке
	fmt.Printf("Name: %s\n", alice.Name)
	fmt.Printf("Age: %d\n", alice.Age)
	fmt.Printf("Employed: %t\n", alice.IsEmployed)
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы