Go数据结构篇1、基本数据类型
bool
string
intint8 int16 int32 int64
uintuint8 uint16 uint32 uint64 uintptr
byte // alias for int8
rune // alias for int32,represents a Unicode code point
float32 float64
complex64 complex128
常量定义
2、类型转换
(1)Go语言不允许隐式类型转换(不支持小位数类型向大位数类型转)
(2)别名和原有类型也不能进行隐式类型转换(type MyInt int64 = int64)
3、类型的预定义值
1.math.MaxInt64
2.math.MaxFloat64
3.math.MaxUInt32
4、指针类型
(1)不支持指针运算
【go语言math包 go语言%t】(2)string是值类型,其默认的初始化值为空字符串,而不是nil
5、算术运算符
- * / %--(不支持前置--)
6、比较运算符
#==!===
(1)比较数组
相同维数且含有形同个数元素的数组才可以比较
每个元素都相同的才相等
7、位运算符
| ^
^ (按位置零)a(^b)
1^01
1^10
0^10
0^00
8、条件与循环
(1)循环
Go 语?仅?持循环关键字 for
(2)条件
9、数组和切片
数组截取,索引下标从0开始计数
a[开始索引(包含), 结束索引(不包含)]
a := [...]int{1, 2, 3, 4, 5}
a[1:2] //2
a[1:3] //2,3
a[1:len(a)] //2,3,4,5
a[1:] //2,3,4,5
a[:3] //1,2,3
切片内部结构
9、Map
9、字符串
Unicode UTF8
常?字符串函数
go语言为什么没有min/max函数go语言math包里面定义了min/max函数,但是是float64类型的 , 而并没有整数类型的min/max 。
因为go没有重载,这是个大坑 。所以math库里min/max函数都只能定义一个,所以官方选择了比较难实现的float64类型 。而简单的整形就需要让程序员自己实现了
4.1 Go语言中包(Packages)基础知识先看一下目录结构,注意这里的src名称是必须的,go在设置了GOPATH后,默认会添加src去寻找package,暂未查询是否有方法不按照src查询
根据上面的描述,Go语言中通过包中函数的名称来区分公共函数和私有函数 , 我们在main函数中是无法调用myPrivateFunc的
此时如果执行通过go run方式执行,会看到如下的提示信息,这与大部分语言对于包管理方式相关,所以我们通过两种不同的方法来让代码执行起来
返回如下,这里面对我们后续执行有影响的两个参数GO111MODULE和GOPATH
如果要使用gopath模式引用包,则需要关闭mod模式
设置GOPATH为当前路径,即main.go所在的路径
此时再查看go env时,GOPATH已经发生改变
我们再次尝试执行代码
可以看到public函数被调用
go语言中math.Exp2(10)什么意思?也就是说,Exp2(10)对10进行了什么运算?math.Exp2(10)就是计算2的10次方 。
下面是一个例子
package main
import "fmt"
import "math"
func main() {
fmt.Printf("%f\n",
math.Exp2(10))
fmt.Printf("%f\n",
math.Exp2(4))
}
go语言math包的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于go语言%t、go语言math包的信息别忘了在本站进行查找喔 。
推荐阅读
- 抖音直播和电视卖货哪个好,抖音直播和卖货哪个赚钱
- 没有项目如何做抖音推广,抖音推广没有营业执照怎么办
- 网页如何与mysql连接数据库连接,网页如何与mysql连接数据库连接失败
- java代码添加注册表,java语言中有哪几种添加注释的方法
- forvb.net的简单介绍
- mysql数据库被锁住了怎么解,mysql数据库恢复
- chatgpt进入新时代,进入新时代时间
- 查查长什么样视频,查查怎么样
- mysql锁表会怎么样 mysql锁表影响查询吗