Go 语言入门:基本数据类型

74 阅读2分钟

基本数据类型

Go 语言的基本数据类型包括 bool、byte、int、int8、int16、int32、int64、uint、uint8、uint16、uint32、uint64、uintptr、float32、float64、complex64 和 complex128。

其中,bool 类型表示布尔值,只有 true 和 false 两个取值;byte 类型是 uint8 的别名,表示一个字节的数据;int 和 uint 类型分别表示有符号和无符号的整数类型,具体长度取决于编译器和操作系统;float32 和 float64 分别表示单精度和双精度浮点数类型;complex64 和 complex128 分别表示由 float32 和 float64 构成的复数类型。

为什么需要变量

简单点说,我们写的程序默认数据都是保存在内存条中的,我们不可能直接通过地址找到这个变量,因为地址太长了,而且不容易记。通常我们是通过变量名找到对应的地址上面的值,再进行一系列操作。

变量如何定义?

  1. 通过var关键字声明,这样声明的变量既可作为局部变量,也可作为全局变量 var k int = 27
  2. 短变量声明,使用:=符号
  3. 匿名变量 它可以像其他标识符那样用于变量的声明或赋值(任何类型都可以赋值给它),但任何赋给这个标识符的值都将被抛弃,因此这些值不能在后续的代码中使用
  4. 变量作用域
  • 函数内定义的变量为局部变量,这种局部变量的作用域只在函数体内,函数的参数和返回值变量都属于局部变量。这种变量在存在于函数被调用时,销毁于函数调用结束后。
  • 函数外定义的变量为全局变量,全局变量只需要在一个源文件中定义,就可以在所有源文件中使用,甚至可以使用import引入外部包来使用全局变量声明必须以 var 关键字开头,如果想要在外部包中使用全局变量的首字母必须大写

注意事项:

  1. (声明变量的时候建议不要手动声明数据类型,因为Go语言会通过数据推导来知道这条数据属于什么数据类型)
  2. 短变量只能在当前函数作用域中使用,不能作为全局变量;但是var可以
  3. 因为 int 和 uint 在不同编译器平台或不同计算机的操作系统中会发生变化,所以若需保持文件的结构不会受到影响,尽量不使用 int 和 uint