前天给大家分享了GoLang的数据定义和它包含的数据类型,今天给大家详细介绍下 Go 的基础数据类型和使用方式。
开始之前先回顾下Go语言的基础数据类型:
var a boolb = truec := a && b //c也会被推导为bool类型
布尔 Bool
var a bool
b = true
c := a && b //c也会被推导为bool类型
上述的值a 为 false,b 为 true,c值为false,只有当且仅当a 和 b 都为true 时才为true。
Go是强类型语言,变量类型一旦确定就不能将其他类型的值赋值给该变量。
整型

package main
import "fmt"
func main() {
var a int8 = 6
var d int = 10
b := 88
fmt.Println("a = ", b, " b = ", b)
}
上面的会打印输出 a = 6 b = 88,b 的类型是通过赋值自动推导出来的。
我们不能像PHP那样直接将 d = a;这样会报编译错误:cannot use a (type int8) as type int in assignment ,这个时候需要使用强制类型转换,如下:
d = int(a) //编译通过
浮点数
Go语言有两种浮点类型:float32 和 float64
package main
import "fmt"
func main() {
var a float32 = 1.23
b := 5.66
fmt.Printf("type of b %T", b)
}
上面的例子会输出:type of b float64 (float64是浮点数的默认类型)
复数类型
go语言支持两种复数类型:
complex64 : 实部和虚部都是 float32 类型的复数
complex128 : 实部和虚部都是 float64 类型的复数
var complexValue complex64
complexValue = 1.10 + 10i // 由两个 float32 实数构成的复数类型
complexValue128 = 1.10 + 10i
上面 complexValue128 和 float64 一样会把实部推导成 float64.
字符串
Go语言中字符串是一种基本类型由字节组成,默认是UTF-8的字节序列。
package main
import "fmt"
func main() {
var str string
strValue := "Hello, kelvin"
strCh := strValue[0] //返回 H
}
与PHP不同,Go的字符串不支持单引号,只能通过双引号定义。
今天跟大家就分享这么多,后面会再做一次类型之间的强制转换和具体的使用。