在go语言中,while不是关键字,可以用for语句加break来实现while循环的效果,例“for {sum++ if sum>10{break}else{...}}”。go语言有break、default 、func、select、case、defer、go、map、else、goto、for、if、var等25个关键字。
本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。
golang 里面没有while关键字,可以用for+break实现
与多数语言不同的是,Go语言中的循环语句只支持 for 关键字,而不支持 while 和 do-while 结构,关键字 for 的基本使用方法与C语言和 C++ 中非常接近:
sum := 0 for i := 0; i < 10; i++ { sum += i }
可以看到比较大的一个不同在于 for 后面的条件表达式不需要用圆括号()括起来,Go语言还进一步考虑到无限循环的场景,让开发者不用写无聊的 for(;;){}
和do{} while(1);
,而直接简化为如下的写法:
package main import "fmt" func main() { sum := 0 for { sum ++ if sum > 10{ break }else{ fmt.Println(sum) } } }
go语言中的关键字
关键字(也称为保留字)是被编程语言保留而不让编程人员作为标识符使用的字符序列。
关键字即是被Go语言赋予了特殊含义的单词,也可以称为保留字。
Go语言中的关键字一共有 25 个,之所以刻意地将Go语言中的关键字保持的这么少,是为了简化在编译过程中的代码解析。和其它语言一样,关键字不能够作标识符使用。
保留关键字 | 说明 |
---|---|
break | 退出循环 |
default | 选择结构默认项(switch、select) |
func | 定义函数 |
interface | 定义接口 |
select | channel |
case | 选择结构标签 |
chan | 定义 channel |
const | 常量 |
continue | 跳过本次循环 |
defer | 延迟执行内容(收尾工作) |
go | 并发执行 |
map | map 类型 |
struct | 定义结构体 |
else | 选择结构 |
goto | 跳转语句 |
package | 包 |
switch | 选择结构 |
fallthrough | 流程控制 |
if | 选择结构 |
range | 从 slice、map 等结构中取元素 |
type | 定义类型 |
for | 循环 |
import | 导入包 |
return | 返回 |
var | 定义变量 |
Go的25个关键字按照作用可以分为3类,分别为包管理、程序实体声明与定义与程序流程控制。
类别 | 关键字 |
---|---|
程序声明 | import, package |
程序实体声明和定义 | chan, const, func, interface, map, struct, type, var |
程序控制流程 | go, select, break, case, continue, default, defer, else, fallthrough, for, goto, if, range, return, switch |
说明:
在Go语言中,程序实体的声明和定义是建立在其数据类型的体系之上的。例如关键字chan、func、interface、map和struct,分别于Go语言的复合数据类型Channel(通道)、Function(函数)、Interface(接口)、Map(字典)和Struct(结构体)相对应。
程序控制流程的关键字,一共15个。其中go和select,这两个主要用于Go语言并发编程。
推荐学习:Golang教程
以上是go语言中while是关键字吗的详细内容。更多信息请关注PHP中文网其他相关文章!