什么是GO语言
- 高性能、高并发
2.语法简单、学习曲线平缓
3.丰富的标准库
4.完善的工具链
5.静态链接
6.快速编译
7.跨平台
8.垃圾回收
GO语言相较于其他语言的优势:
1.最初使用的 Python,由于性能问题换成了 Go
2.c++ 不太适合在线 Web 业务
3,早期团队非 Java 背景
4.性能比较好
5.部署简单、学习成本低
6.内部 RPC 和 HTTP 框架的推广
变量和常量
变量跟常量的区别:变量是一个可变的值,而常量是一个恒定不变的值。
变量
变量的功能是存储数据,不同的变量保存的数据类型也不一样。我们常见的变量类型有整形(int)、浮点型(float)、布尔型(bool)等。
变量声明
Go语言中变量声明格式为:
var 变量名 变量类型
复制代码
声明变量需要以var开头,同时声明变量不需要分号结尾。举例:
var name string
var age int8
var flag bool
复制代码
go语言中支持批量声明变量
var ( name string
age int8
flag bool )
复制代码
变量初始化
go语言在声明变量时,会自动为变量对应的内存区域进行初始化,并且每个变量会被初始化为默认值。例如:整形和浮点型的默认值都是0;字符串默认值是空字符串;布尔值默认值是false;切片、函数、指针变量的默认值都是nil。 变量初始化格式:
var 变量名 变量类型 = 值
复制代码
可以声明多个变量,跟java,C语言类似
var name String = "Tom"
var age int8 = 20;
var sex String = "man";
复制代码
常量
常量声明
常量一般用于声明那些不会变的值,同时常量的使用与变量的使用几乎一致,只是将var换成了const,但是常量在声明时就必须赋值。
const pi = 3.1415926 const ( a = 100 b = 200 )
//const在同时声明多个变量时,可以省略下面的值,如果省略了那么下面的值和其上面一行的值相同
const ( a1 = 11 a2 a3 )
//此时a2,a3的值都是11,与a1相同
复制代码
iota
iota是一个常量计数器,只能在常量中使用。 iota在const出现时就会重置为0,而const每额外声明一个常量,iota的值就会+1。
const ( a1 = iota //0 a2 //1 a3 //2 )
//我们也可以使用_来跳过中间值
const ( b1 = iota //0 b2 //1 _ b3 //3 )
//iota也可以用于中间插队
const ( c1 = iota //0 c2 = 222 //222 c3 = iota //2 c4 //3 )