Golang基本语法与使用—基本数据类型

Golang:基本数据类型

1. 整型

整型分为两大类:

  • 按长度分为:int8,、int16、int32、int64
  • 还有对应的无符号整型:uint8、uint16、uint32、uint64

其中,uint8就是我们熟知的byte型,int16对应C语言的short型,int64对应C语言的long型。

1.1.  自动匹配平台的int uint

func main() {
var v1 int32
v1 = 123
v2 := 64

fmt.Println(reflect.TypeOf(v1))
fmt.Println(reflect.TypeOf(v2))
// 输出结果为:
// int32
// int
}

 

2. 浮点型

Go语言支持两种浮点型数:float32和float64。这两种浮点型数据格式遵循IEEE754标准。

float32的浮点数的最大范围约为3.4e38,可以使用常量定义: math.MaxFloat32 。

float64的浮点数的最大范围约为1.8e308,可以使用一个常量定义 math.MaxFloat64 。

func main() {
var f1 float32
f1 = 12
fmt.Println(f1)

f2 := 12.555
fmt.Println(reflect.TypeOf(f2))
fmt.Println(f2)
// 输出结果:
// 12
// float64
fmt.Printf("%f\n", f2)
fmt.Printf("%.2f\n", f2)
// 输出结果:
// 12.555000
// 12.55
}

注意:float和int不能进行计算,需要强制转换过后才行。

 

3. 布尔型

布尔型数据在Go语言中以bool 类型进行声明,布尔型数据只有true(真)和 false(假)两个值。

Go语言中不允许将布尔型强制转换为整型,代码如下:

func main() {
var n bool

fmt.Println(int(n) * 2)

// cannot convert n (type bool) to type int
}

布尔型无法参与数值运算,也无法与其他类型进行转换。

func main() {
var v1 bool
v1 = true
fmt.Println(v1)

v2 := (1 == 2)
fmt.Println(reflect.TypeOf(v2))

v3 := !v2
fmt.Println(v3)
// 输出结果:
// true
// bool
// true
}

 

4. 字符

字符串中的每一个元素叫做“字符”。在遍历或者单个获取字符串元素元素时可以获得字符。

 

你可能感兴趣的:(Golang基本语法与使用—基本数据类型)