Типы данных в GO

Типы данных в GO

#GO


Типы данных определяют тип данных, который может содержать допустимая переменная Go . В языке Go этот тип делится на четыре категории:


  1. Основной тип: числа, строки и логические значения подпадают под эту категорию.
  2. Тип агрегата: Массив и структуры подпадают под эту категорию.
  3. Тип ссылки: указатели, фрагменты, карты, функции и каналы подпадают под эту категорию.
  4. Тип интерфейса

Здесь мы обсудим основные типы данных на языке Go. Основные типы данных далее подразделяются на три подкатегории:

  • чисел
  • Булевы
  • Струны

чисел

В языке Go числа делятся на три подкатегории:

  • Целые числа. В языке Go целые числа со знаком и без знака доступны в четырех разных размерах, как показано в таблице ниже. Подписанное int представляется как int, а целое без знака — как uint.
  • Пример:

  • // Перейти к программе для иллюстрации
  • // использование целых чисел
  • package main 
  • import "fmt"
  •          
  • func main() {
  •       
  •     // Использование 8-битного unsigned int
  •     var X uint8 = 225
  •     fmt.Println(X+1, X)
  •       
  •     // Использование 16-битного со знаком int
  •     var Y int16 = 32767
  •     fmt.Println(Y+2, Y-2) 
  • }
  • Выход:
226 225
-32767 32765
  • Числа с плавающей точкой: В языке Go числа с плавающей точкой делятся на две категории, как показано в таблице ниже:

  • Пример:

  • // Перейти к программе для иллюстрации
  • // использование плавающей запятой
  • // числа
  • package main 
  • import "fmt"
  •          
  • func main() {
  •     a := 20.45
  •     b := 34.89
  •       
  •     // Вычитание двух
  •     // число с плавающей точкой
  •     c := b-a
  •       
  •     // Показать результат
  •     fmt.Printf("Result is: %f", c)
  •       
  •     // Показать тип переменной c
  •     fmt.Printf("\nThe type of c is : %T", c)  
  • }
  • Выход:
Result is: 14.440000
The type of c is : float64
  • Комплексные числа: Комплексные числа разделены на две части, показанные в таблице ниже. float32 и float64 также являются частью этих комплексных чисел. Встроенная функция создает сложное число из его мнимой и реальной части, а встроенная мнимая и действительная функция извлекает эти части.
  • Пример:

  • // Перейти к программе для иллюстрации
  • // использование комплексных чисел
  • package main
  • import "fmt"
  •   
  • func main() {
  •       
  •    var a complex128 = complex(6, 2)
  •    var b complex64 = complex(9, 2)
  •    fmt.Println(a)
  •    fmt.Println(b)
  •      
  •    // Показать тип
  •   fmt.Printf("The type of a is %T and "+
  •             "the type of b is %T", a, b)
  • }
  • Выход:
(6+2i)
(9+2i)
The type of a is complex128 and the type of b is complex64

Булевы

Логический тип данных представляет только один бит информации, истина или ложь. Значения типа boolean не преобразуются неявно или явно в любой другой тип.

Пример:


// Перейти к программе для иллюстрации

// использование логических значений

package main

import "fmt"

  

func main() {

      

    // переменные

   str1 := "GeeksforGeeks"

   str2:= "geeksForgeeks"

   str3:= "GeeksforGeeks"

   result1:= str1 == str2

   result2:= str1 == str3

     

   // Показать результат

   fmt.Println( result1)

   fmt.Println( result2)

     

   // Отображаем тип

   // result1 и result2

   fmt.Printf("The type of result1 is %T and "+

                   "the type of result2 is %T",

                             result1, result2)

     

}

Выход:

false
true
The type of result1 is bool and the type of result2 is bool

Струны

Строковый тип данных представляет собой последовательность кодовых точек Unicode. Или, другими словами, мы можем сказать, что строка — это последовательность неизменяемых байтов. Это означает, что после создания строки вы не можете изменить эту строку. Строка может содержать произвольные данные, включая байты с нулевым значением в удобочитаемой форме.

Пример:


// Перейти к программе для иллюстрации

// использование строк

package main

import "fmt"

  

func main() {

      

    // переменная str, которая хранит строки

   str := "GeeksforGeeks"

     

   // Отображаем длину строки

   fmt.Printf("Length of the string is:%d",

                                  len(str))

     

   // Показать строку

   fmt.Printf("\nString is: %s", str)

     

   // Отображаем тип переменной str

   fmt.Printf("\nType of str is: %T", str)

}

Выход:

Length of the string is:13
String is: GeeksforGeeks
Type of str is: string



Report Page