Menu
Coddy logo textTech

Определение пользовательских типов

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

В Go вы можете создавать свои собственные пользовательские типы на основе существующих типов. Это придает вашему коду больше ясности и типобезопасности.

Определите пользовательский тип для температуры в градусах Цельсия:

type Celsius float64

func main() {
    var temperature Celsius = 25.5
    fmt.Printf("Temperature: %.1f°C\n", temperature)
}

Результат показывает значение температуры:

Temperature: 25.5°C

Пользовательские типы ведут себя так же, как их базовые типы, но рассматриваются компилятором как отдельные типы, что улучшает читаемость кода и предотвращает логические ошибки.

challenge icon

Задание

Новичок

В этом испытании вы попрактикуетесь в определении пользовательского типа в Go. Пользовательские типы позволяют создавать собственные типы данных на основе существующих.

Ваша задача — определить пользовательский тип с именем Temperature на основе float64, а затем создать переменную этого типа.

После определения типа программа должна вывести значение и тип переменной температуры.

Шпаргалка

Создавайте пользовательские типы в Go, используя ключевое слово type:

type Celsius float64

Пользовательские типы основаны на существующих типах, но рассматриваются компилятором как отдельные типы:

type Celsius float64

func main() {
    var temperature Celsius = 25.5
    fmt.Printf("Temperature: %.1f°C\n", temperature)
}

Пользовательские типы улучшают читаемость кода и обеспечивают типобезопасность, ведя себя при этом как их базовые типы.

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

package main

import "fmt"

// TODO: Определите пользовательский тип с именем 'Temperature' на основе float64

func main() {
	// Создайте переменную типа Temperature со значением 23.5
	var roomTemp Temperature = 23.5
	
	// Выведите значение и тип roomTemp
	fmt.Printf("Room temperature: %v\n", roomTemp)
	fmt.Printf("Type of roomTemp: %T\n", roomTemp)
}
quiz iconПроверьте себя

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

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