Go 语言数据类型

数据类型指定有效的Go变量可以保存的数据类型。在Go语言中,类型分为以下四类:

  1. 基本类型:数字,字符串和布尔值属于此类别。

  2. 聚合类型:数组和结构属于此类别。

  3. 引用类型:指针,切片,map集合,函数和Channel属于此类别。

  4. 接口类型

在这里,我们将讨论Go语言的基本数据类型。在基本数据类型被进一步划分为三个子类别分别是:

  • Numbers

  • Booleans

  • Strings

数字类型

在Go语言中,数字分为三个子类别:

// 使用整数 package main  import "fmt"         func main() { 
      
    // 使用8位无符号整型    var X uint8 = 225 
    fmt.Println(X+1, X) 
      
    // 使用16位有符号整型    var Y int16 = 32767 
    fmt.Println(Y+2, Y-2)  
}
226 225-32767 32765
// 浮点数的使用 package main  import "fmt"         func main() { 
    a := 20.45 
    b := 34.89 
      
    //两个浮点数相减    c := b-a 
      
    //显示结果     fmt.Printf("结果: %f", c) 
      
    //显示c变量的类型    fmt.Printf("\nc的类型是 : %T", c)   
}
结果: 14.440000c的类型是: 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("a的类型是 %T 以及"+ "b的类型是 %T", a, b) 
}
(6+2i)
(9+2i)
a的类型是 complex128 以及b的类型是 complex64

布尔类型

布尔数据类型仅表示true或false。布尔类型的值不会隐式或显式转换为任何其他类型。

示例

//布尔值的使用package mainimport "fmt"func main() {

    //变量    str1 := "nhooo"    str2 := "nhooo"    str3 := "nhooo"    result1 := str1 == str2
    result2 := str1 == str3

    //打印结果    fmt.Println(result1)
    fmt.Println(result2)

    //显示result1和result2的类型    fmt.Printf("result1 的类型是 %T , "+"result2的类型是 %T", result1, result2)

}

输出:

truetrueresult1 的类型是 bool , result2的类型是 bool

字符串类型

字符串数据类型表示Unicode代码点的序列。换句话说,我们可以说一个字符串是不可变字节的序列,这意味着一旦创建了一个字符串,您就无法更改该字符串。字符串可以包含任意数据,包括以人类可读形式包含零值的字节。

示例

//使用字符串package main import "fmt"  func main() { 
      
    //用于存储字符串的str变量   str := "nhooo"     
   //显示字符串的长度   fmt.Printf("字符串的长度:%d", len(str)) 
     
   //显示字符串    fmt.Printf("\n字符串是: %s", str) 
     
   // 显示str变量的类型   fmt.Printf("\nstr的类型是: %T", str) 
}

输出:

字符串的长度:5字符串是: nhooostr的类型是: string