在 Go 编程语言中,数据类型用于声明函数和变量。
数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。
数据类型:
布尔型布尔型的值只可以是常量 true 或者 false,默认为 false。一个简单的例子:var b bool = true。数字类型整型 int 和浮点型 float32、float64,Go 语言支持整型和浮点型数字,并且原生支持复数,其中位的运算采用补码。包括:uint8 无符号 8 位整型 (0 到 255)uint16 无符号 16 位整型 (0 到 65535)uint32 无符号 32 位整型 (0 到 4294967295)uint64 无符号 64 位整型 (0 到 18446744073709551615)int8 有符号 8 位整型 (-128 到 127)int16 有符号 16 位整型 (-32768 到 32767)int32 有符号 32 位整型 (-2147483648 到 2147483647)int64 有符号 64 位整型 (-9223372036854775808 到 9223372036854775807)float32 IEEE-754 32位浮点型数float64 IEEE-754 64位浮点型数complex64 32 位实数和虚数complex128 64 位实数和虚数byte 类似 uint8rune 类似 int32uint 32 或 64 位int 与 uint 一样大小uintptr 无符号整型,用于存放一个指针字符串类型:字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。Go语言的字符串的字节使用UTF-8编码标识Unicode文本。派生类型:包括:(a) 指针类型(Pointer)(b) 数组类型(c) 结构化类型(struct)(d) Channel 类型(e) 函数类型(f) 切片类型(g) 接口类型(interface)(h) Map 类型
类型转换
类型转换用于将一种数据类型的变量转换为另外一种类型的变量。Go 语言类型转换基本格式如下:
type_name(expression)
type_name 为类型,expression 为表达式。
以下实例中将整型转化为浮点型,并计算结果,将结果赋值给浮点型变量:
package main
import "fmt"
func main() {
var sum int = 17
var count int = 5
var mean float32
mean = float32(sum)/float32(count) // 整型转化为浮点型
fmt.Printf("mean 的值为: %f\n",mean) // 3.400000
}
