GO语言的关键字:
break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var
if 、 else、 break 、 for continue
for i := 0; i < 10; i++ {
if i == 2 {
continue
}
if i == 3 {
break
}
}
if else 流程控制 , for循环 , break跳出当前循环, continue 跳出本次循环
swich 、case、 default
n := 2
switch n {
case 1:
fmt.Println("n = 1")
case 2:
fmt.Println("n = 2")
default:
fmt.Println(" n不等于1 也不等于2 ")
}
流程控制 如case都没有执行 则执行 default
func
func method(){
fmt.Println("我是一个无参无返回值的函数")
}
定义函数
interface
type person interface{
work()
}
定义接口
defer
defer fmt.Println("我后执行")
fmt.Println("我先执行")
用于资源释放 添加了defer的语句 会最后执行 如果有多个则 先进后出
var
var a int
var b int = 3
定义常量
const
const a int= 1
const b = "我是一个常量"
const(
i = iota + 1
ii
iii
)
定义常量 枚举
goto
for i := 0; i < 10; i++ {
if i == 2 {
goto xx
}
}
xx:
fmt.Println("跳转到这里")
流程控制 跳转到 label标签 不推荐使用
map
//定义一个hash 未初始化
var hash1 map[string]int
//使用make 来初始化内存
var hash2 = make(map[string]int, 5)
定义一个hash (字典) 关联数据类型
type 、 struct
type person struct {
name string
age int
}
type person interface{
engagement()
}
type定义类型, struct定义结构体 类似于 JAVA 的 pojo
chan
//为 nil 未初始化
var ch1 chan string
//定义一个容量为0的管道
var ch2 = make(chan string)
//定义一个容量为10的管道
var ch2 = make(chan string,10)
管道 go语言的特点 可以理解为先进先出的消息队列
package 、 import
package main
import "fmt"
package定义包 import引入包
fallthrough
n := 2
switch n {
case 1:
fmt.Println("n = 1")
case 2:
fmt.Println("n = 2")
fallthrough
default:
fmt.Println(" n不等于1 也不等于2 ")
}
此时输出 “n=2” "n不等于1 也不等于2 " fallthrough关键字 会强制执行case成立后下面的语句
range
//定义一个map
var hash = make(map[int]int,10)
//填充数据
for i:=0 ;i < 10;i++{
hash[i+i] = i
}
//range 遍历
for k,v := range hash{
fmt.Println(k,v)
}
用于循环遍历 如果是map类型 可以直接得到 “key” 和 “value”, 如果是数组 得到是 “下标” 跟 “value”
return
func method(x, y int) (z int) {
z = x + y
return
}
用于从函数返回
select
select {
//如果 从chan中取到数据 则 :
case <- chan:
return 1
}
select {
//如果 向chan录入数据 则 :
case chan <- 1:
return 2
}
select用来监听与管道(channel)有关的操作, 它会不断地检测管道的输入输出
转载:https://blog.csdn.net/ZHOUAXING/article/details/105005583
查看评论