go基本数据类型
go
package main
import (
"fmt" // 导入内置 fmt
)
func main() { // main函数,是程序执行的入口
fmt.Println("Hello World!") // 在终端打印 Hello World!
var i1 = 101
fmt.Println("十进制定义")
fmt.Printf("%d\n", i1) // 十进制
fmt.Printf("%b\n", i1) // 二进制
fmt.Printf("%o\n", i1) // 八进制
fmt.Printf("%x\n", i1) // 十六进制
fmt.Println("八进制定义")
i2 := 077
fmt.Printf("%d\n", i2) // 十进制
fmt.Printf("%b\n", i2) // 二进制
fmt.Printf("%o\n", i2) // 八进制
fmt.Printf("%x\n", i2) // 十六进制
fmt.Printf("%T\n", i2) // 类型
fmt.Println("十六进制定义")
i3 := 0x1234567
fmt.Printf("%d\n", i3) // 十进制
fmt.Printf("%b\n", i3) // 二进制
fmt.Printf("%o\n", i3) // 八进制
fmt.Printf("%x\n", i3) // 十六进制
fmt.Printf("%T\n", i3) // 类型
fmt.Println("定义类型")
i4 := int8(1)
i5 := int16(1)
i6 := int32(1000)
i7 := int64(1)
fmt.Printf("i4:%T\n", i4)
fmt.Printf("i5:%T\n", i5)
fmt.Printf("i6:%T\n", i6)
fmt.Printf("i6:%d\n", i6)
fmt.Printf("i7:%T\n", i7)
// 取值范围小 浪费存储空间
// float 类型
// bool 类型
// 字符串类型 字符
// rune 中文3字节 别名 int32
// 循环输出字符串, 循环输出中文字符串
// 字符串修改
s2 := "小白兔"
s3 := []rune(s2) // 把字符串强制转成rune切片
s3[1] = '大' // 注意 这里需要使用单引1号的字符,而不是双引1号的字符串
fmt.Println(string(s3)) // 把rune类型的s3强转成字符串
// 类型转换
}