"当我回头,妄想找到幸福的线索,那束光拉长我的影子,逃离我。"
一、Go简介
Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强乐西、编译型语言。Go 语言语法与 C 相近,但功能上有:内存安全, GC(垃圾回收), 结构形态及 CSP-style 并发计算。 Go(计算机编程语言)
go也是现在很火的一个语言。很多的大厂如字节、百度、谷歌等等内部上万的微服务,使用golang来编写,可以说在未来它的发展前景市场占有率会越来越高。
go语言的特点:
1.高性能、高并发
2.语法简单、精炼,顺序C、C++语言的 容易上手
3.标准库丰富
4.跨平台
5.静态编译 等等
二、go的基础语法
(1)Hello world
运行程序:
①go run + filename
②go build + filename 会直接生成可执行二进制程序
第一行package main代表该文件属于main包的一部分。是程序的入口点
第三行import类似python的import导入模块。要使用标准库里的函数,在C、C++中的做法通常为#include<...>。FMT里面包含了打印到显示器的函数
注意:main后面的第一个花括号一定是和main函数在同一行的!
(2)定义变量
go它是一门强类型的语言,每一个变量都有它自己的类型,不像python是一门动态类型的语言,变量的类型可以不断变化。
go常见的类型:
字符串、整型、浮点型、布尔类型
为此,字符串可以直接用+、==进行拼接和比较。这是类似python 的语法。
声明方式:
①var + 变量名 (类型属性)= 值属性
②变量名 := 值属性
③对于常量类型,把var去掉 带上const即可
(3)Go语言的控制语句
ifelse:
golang中的ifelse条件不需要代括号,并且后面需要跟上大括号 。
在条件中也可以定义变量
循环语句:
go中摈弃了while、dowhile 唯独保留了for。并且break、continue仍然是可以在go中使用的。
for循环中间的任意一段都可以省略
switch:
golang没有像python切掉switch的语法。并将switch分支结构完善得更强大。
switch的条件不仅仅可以是整数
(4)数组切片
golang数组定义也有两种方法:
①var + 变量名 + [个数] 类型
②变量名 := [个数]类型 {初始化}
注:var 不能用{}初始化
切片;
用make创建一个切片,用它像数组一样去使用。
(5)map
在其他编程语言,习惯叫它为哈希、字典。
1.mapName := map[keyType]valueType
{ "KEY1":"Value1",
"KEY2":"Value2",
"KEY3":"Value3"}
2.我们可以使用make去创建一个字典
map使用[] 会返回两个值,而不单单是value
(6)range
range通常用来快速遍历,使代码更简洁。它在遍历的时候,也会返回两个值,一个是容器的索引,第二个是索引下的值。如果我们想去掉返回值的其中一个,在对应位置_ 替代。
(7)函数\指针
golang的函数支持多个返回值。
golang保留C、C++中指针的使用;
(8)结构体\结构体方法
定义结构体:
type 变量名 struct{
//进行初始化
a type
b type
}
结构体方法:
func (u *user) 函数名(){
}
本篇到此结束,感谢你的阅读
祝你好运,向阳而生~