Menu
Coddy logo textTech

Вывод типов

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

В Go мы можем вывести тип переменной, используя спецификатор формата %T с функцией fmt.Printf(). Давайте рассмотрим, как это сделать с различными типами данных.

Сначала давайте создадим переменные разных типов и выведем их типы:

name := "Gopher"
age := 25
height := 1.85
isActive := true
    
fmt.Printf("name is type: %T\n", name)
fmt.Printf("age is type: %T\n", age)
fmt.Printf("height is type: %T\n", height)
fmt.Printf("isActive is type: %T\n", isActive)

После выполнения этого кода мы увидим тип каждой переменной, отображаемый на экране:

name is type: string
age is type: int
height is type: float64
isActive is type: bool

Спецификатор формата %T указывает Go отображать тип данных вместо самого значения. Это очень полезно, когда вы не уверены, какого типа переменная, или когда вы изучаете систему типов Go.

challenge icon

Задание

Новичок

В этом испытании вы попрактикуетесь в использовании спецификатора формата %T с функцией fmt.Printf для отображения типов различных переменных.

В коде уже определено несколько переменных разных типов. Ваша задача — использовать fmt.Printf со спецификатором формата %T, чтобы вывести тип каждой переменной.

Шпаргалка

Используйте спецификатор формата %T с fmt.Printf() для отображения типа переменной:

name := "Gopher"
age := 25
height := 1.85
isActive := true

fmt.Printf("name is type: %T\n", name)
fmt.Printf("age is type: %T\n", age)
fmt.Printf("height is type: %T\n", height)
fmt.Printf("isActive is type: %T\n", isActive)

Вывод:

name is type: string
age is type: int
height is type: float64
isActive is type: bool

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

package main

import "fmt"

func main() {
	// Эти переменные уже определены для вас
	age := 25
	price := 19.99
	isAvailable := true
	productName := "Wireless Headphones"
	
	// TODO: Используйте fmt.Printf с %T, чтобы вывести тип переменной 'age'
	// Вывод должен быть: "The type of age is: int"
	
	// TODO: Используйте fmt.Printf с %T, чтобы вывести тип переменной 'price'
	// Вывод должен быть: "The type of price is: float64"
	
	// TODO: Используйте fmt.Printf с %T, чтобы вывести тип переменной 'isAvailable'
	// Вывод должен быть: "The type of isAvailable is: bool"
	
	// TODO: Используйте fmt.Printf с %T, чтобы вывести тип переменной 'productName'
	// Вывод должен быть: "The type of productName is: string"
}
quiz iconПроверьте себя

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

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