作者:看那个码农
公众号:看那个码农
上期内容介绍了Go语言学习之声明变量|Go主题月
- Go语言的变量
- 如何声明变量
- 初始化变量
- 多个变量同时赋值
- 匿名变量的使用
本篇内容将继续带领大家走进Go语言的世界。
1.本文简介
本篇将介绍
Go语言的数据类型
Go语言有很多数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有切片、结构体、函数、map、通道等。
Go语言的基本类型和其它语言的大同小异,
本篇文章就来看看常用的
- 整型
- 浮点型
- 布尔型
- 字符串
- 切片 五种数据类型。
其它数据类型由于内容过多,我们会在之后的文章中进行赘述。
1.整型
整型分为以下两个大类。
按长度分为: Int8、int16、int32、int64
还有对应的无符号整型: uint8、uint16、uint32、uint64
2.浮点型
Go语言支持两种浮点型数: float32、float64
float32的浮点数的最大范围约为3.4e38, 可以使用常量定义:math.MaxFloat32
float64的浮点数的最大范围约为1.8e308,可以使用常量定义:math.MaxFloat64
打印浮点数的时候,可以使用fmt包配合“%f”进行输出
例如下面案例:
package main
import (
"fmt"
"math"
)
func main(){
fmt.Printf("%f\n",math.Pi)
fmt.Printf("%.2f\n",math.Pi)
}
输出为:
第一次输出是按默认的宽度和精度输出。
第二次输出是按默认宽度和2位精度输出,即小数点后面的位数是两位。
3.布尔型
布尔型数据在Go语言中以bool类型进行声明,布尔型的数据只有true和false两个值
例如下面案例:
package main
import (
"fmt"
)
func main(){
var a bool
fmt.Println(a)
a=true
fmt.Println(a)
}
输出为
第一次布尔变量a输出为false,是因为布尔类型的默认值为false
第二次布尔变量a输出为true,是因为a=true为布尔变量进行了赋值
4.字符串
字符串可以是任何字符序列、其中的字符可能是数字、字母和数字
在Go语言中声明字符串变量很简单
package main
import (
"fmt"
)
func main(){
var a string = "Hello_World"
fmt.Println(a)
b:="Hello_World"
fmt.Println(b)
}
输出为:
Go语言的字符串常见转义符包含回车、换行、单双引号、制表符等
\r回车符
\n换行符
\t制表符
\’单引号
\’’双引号
\\反斜杠
5.切片
切片是一个拥有相同类型元素的可变长度的序列,切片的声明方式如下:
var name []T
T代表元素类型,可以是整型、浮点型、布尔型等等。
切片的元素使用[]进行访问,方括号中提供切片的索引即可访问元素。
注意:切片不需要说明长度,但是若说明了长度,则不能超过这个长度,索引的范围从0开始。
- 如未指定大小的命名
var identifier []type
//例如
var slice []int
- 如指定大小的命名,len为切片大小
var slice1 []type = make([]type, len)
//也可以简写为
slice1 := make([]type, len)
//例如
slice := make([]type, len)
关于切片的更多内容会在接下来的文章中进行详细描述
6.转换不同的数据类型
Go语言使用类型前置加括号的形式进行类型转换,一般格式如下:
T(表达式)
T表示要转换的类型。表达式包含变量、复杂计算式、函数返回值等
注意:Go语言不允许将整型强制转换为布尔型
例如以下案例,就是将浮点型数字强制转换成了整型数字
package main
import (
"fmt"
)
func main(){
var a float32=10.18
fmt.Println(int(a))
}
输出为
2.本文小结
本文介绍了Go语言的几个基本类型,如整型、布尔型、字符串、浮点型,切片等。对于Go语言的其它数据类型将在之后的文章中循序渐进地为大家进行介绍。
这几天学习Go语言地感受就是Go语言简洁,明了,清晰。
继续撸起袖子加油干。
如果你觉得这篇内容对你有帮助的话:
1、点赞支持下吧,让更多的人也能看到这篇内容
2、关注公众号:看那个码农,我们一起学习一起进步。
本文正在参与「掘金 2021 春招闯关活动」, 点击查看 活动详情