bool类型、整型、浮点数、复数、String
package main
import (
"fmt";
"reflect"
)
func main() {
//bool
var ok bool
ok = true
nook := false //段类型声明,只能在括号里面使用
// 注意,GO里面bool与整形0 1 不同
fmt.Println(ok, nook)
//整型 byte int int8 int16 ....
var a int = 1
var b int8 = 1
if a == int(b) { //不同类型的整型必须强转换后才能比较 或赋值
fmt.Println("equal")
}
//浮点型
c :=10.00
fmt.Println(reflect.TypeOf(c))
//浮点数默认64位
//浮点数不用 == 与 != 比较,而是相减与科学计数比较
//复数
//复数由两个浮点数构成
var value1 complex64 = 3.1 + 5i
value2 := 3.1 + 6i
value3 := complex(2.1, 3)
fmt.Println(value1, value2)
d := real(value3)
e := imag(value3)
fmt.Println(d,e)
//String 属于常量,可以按索引访问
var astring = "hello world"
bstring :=astring[0]
//a[1] ='a' // 常量值不能改
cstring := []byte(astring) //转换成切片
fmt.Println(bstring)
fmt.Println(cstring)
fmt.Println( reflect.TypeOf(cstring))
//取字符串的片段, dstring 仍然是string
dstring := astring[2:]
fmt.Println( reflect.TypeOf(dstring))
estring := "hello, 世界"
fstring := []byte(estring)
gstring := []rune(estring)
fmt.Println(reflect.TypeOf(fstring))
fmt.Println(reflect.TypeOf(gstring))
hstring := astring + estring
fmt.Println(hstring)
fmt.Println(len(hstring))
for i , v := range hstring{
fmt.Println(i,v)
}
}