Тип byte

Тип byte в языке Go представляет собой псевдоним для типа uint8. Он используется для хранения одного байта данных (число от 0 до 255). Чаще всего byte применяется при работе с бинарными данными, чтении и записи файлов, а также при обработке строк как последовательностей байт.

Синтаксис

govar b byte = 65

Пример

Давайте объявим переменную типа byte и выведем ее значение:

gopackage main

import "fmt"

func main() {
  var b byte = 97
  fmt.Println(b)
}

Результат выполнения кода:

go97

Пример

Тип byte можно использовать для хранения символов ASCII. При выводе с использованием форматной строки %c мы увидим сам символ:

gopackage main

import "fmt"

func main() {
  var b byte = 97
  fmt.Printf("%c\n", b)
}

Результат выполнения кода:

go"a"

Пример

Срезы байт ([]byte) часто используются для работы со строками. Преобразуем строку в срез байт и обратно:

gopackage main

import "fmt"

func main() {
  str := "abcde"
  bytes := []byte(str)
  fmt.Println(bytes)

  str2 := string(bytes)
  fmt.Println(str2)
}

Результат выполнения кода:

go[97 98 99 100 101]
"abcde"

Пример

Изменим отдельный байт в срезе и преобразуем обратно в строку:

gopackage main

import "fmt"

func main() {
  bytes := []byte("abcde")
  bytes[2] = 90 // заменяем 'c' на 'Z' (ASCII код 90)
  str := string(bytes)
  fmt.Println(str)
}

Результат выполнения кода:

go"abZde"

Смотрите также

  • тип rune,
    который используется для хранения Unicode-символов
  • тип string,
    который представляет собой строку из байт
  • тип int,
    который используется для хранения целых чисел
  • тип uint8,
    псевдонимом которого является тип byte