go语言中while是关键字吗
在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中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Go语言中用于浮点数运算的库介绍在Go语言(也称为Golang)中,进行浮点数的加减乘除运算时,如何确保精度是�...

Go爬虫Colly中的Queue线程问题探讨在使用Go语言的Colly爬虫库时,开发者常常会遇到关于线程和请求队列的问题。�...

Go语言中结构体定义的两种方式:var与type关键字的差异Go语言在定义结构体时,经常会看到两种不同的写法:一�...

Go语言中哪些库是大公司开发或知名开源项目?在使用Go语言进行编程时,开发者常常会遇到一些常见的需求,�...

Go语言中字符串打印的区别:使用Println与string()函数的效果差异在Go...

Go语言中使用RedisStream实现消息队列时类型转换问题在使用Go语言与Redis...

GoLand中自定义结构体标签不显示怎么办?在使用GoLand进行Go语言开发时,很多开发者会遇到自定义结构体标签在�...

Go指针语法及viper库使用中的寻址问题在使用Go语言进行编程时,理解指针的语法和使用方法至关重要,尤其是在...
