设为首页 加入收藏

TOP

Go,从命名开始!Go的关键字和标识符全列表手册和代码示例!(一)
2023-09-09 10:25:24 】 浏览:121
Tags:从命名 关键字 符全列

关注TechLeadCloud,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。

file

一、Go的关键字列表和分类

介绍

关键字(Keywords)是编程语言中预定义的一组特殊词汇,每个关键字都有一个明确的功能和用途。在Go编程语言中,关键字起着构建程序逻辑框架的作用,是程序语义和结构的基础。本篇文章旨在深入探究关键字在Go中的定位与应用,以理解其在程序设计中的重要性。Go语言有25个预定义的关键字,这些关键字用于各种特定目的,从声明变量和函数,到流程控制和并发编程。

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

关键字在Go中的定位

语言的基石

关键字在任何编程语言中都是基础构成元素,Go语言也不例外。它们是用于描述程序逻辑、定义数据结构、和处理错误等多方面任务的工具。

简洁与高效

Go语言以其简洁性和高效性而受到广泛欢迎,这在很大程度上得益于其有限但高度优化的一组关键字。Go仅有25个关键字,相较于其他编程语言,这个数字相对较小,但每一个关键字都有明确和重要的用途。

可扩展性和灵活性

虽然关键字本身是固定的,但Go提供了一系列复合语句和操作符,以实现高度的可扩展性和灵活性。例如,你可以使用 if-else,for 和 switch 关键字创建复杂的逻辑结构。

关键字分类

声明各种代码元素

关键字 描述
const 用于声明一个或多个常量
func 用于定义新的函数
import 用于导入外部包
package 用于声明包名,通常位于每个Go源文件的第一行
type 用于声明自定义类型,如结构体、接口、别名等
var 用于声明一个或多个变量

组合类型的字面表示

关键字 描述
chan 用于声明一个新的通道(channel)
interface 用于定义一个新的接口
map 用于声明一个新的映射(键-值存储)
struct 用于定义一个新的结构体

基本流程控制语法

关键字 描述
break 用于中断当前循环或 switch 语句
case switch 语句中的一个分支
continue 跳过当前循环迭代的剩余语句,进入下一次迭代
default switch 语句中的默认分支
else if 语句的否定分支
fallthrough 用于 switch 语句中,使控制流继续执行下一个 case
for 用于循环
goto 跳转到标签(不推荐使用)
if 条件语句
range 用于 for 循环,遍历数组、切片、映射或通道
return 用于从函数返回值
select 用于多路通道选择
switch 用于多分支选择语句

协程和延迟函数调用

关键字 描述
defer 用于延迟执行函数,通常用于清理资源
go 用于启动一个新的 goroutine,实现并发

二、Go的关键字全代码示例

关键字全代码示例

关键字 代码示例 代码作用
const const PI = 3.14159 定义常量 PI
func func add(x, y int) int { return x + y } 定义名为 add 的函数
import import "fmt" 导入 fmt
package package main 定义包名为 main
type type Point struct {x, y int} 定义一个名为 Point 的结构体
var var name string = "John" 定义一个名为 name 的变量
chan ch := make(chan int) 创建一个新的整数类型的通道
interface type Writer interface { Write([]byte) error } 定义一个名为 Writer 的接口
map m := map[string]int{"one": 1} 创建一个键为字符串、值为整数的映射
struct type Circle struct { Radius float64 } 定义一个名为 Circle 的结构体
break if x > 0 { break } 如果 x > 0,则跳出循环
case case "apple": fmt.Println("It's an apple") switch 语句中,定义一个 case
continue if x < 0 { continue } 如果 x < 0,则跳过当前循环迭代
default default: fmt.Println("It's default") switch 语句中,定义一个默认 case
else if x > 0 { /*...*/ } else { /*...*/ } if 语句的否定分支
fallthrough case 1: fallthrough switch 语句中,强制执行下一个 case
for for i := 0; i < 10; i++ { /*...*/ } 循环10次
goto goto myLabel 跳转到 myLabel 标签(不推荐)
if if x > 0 { /*...*/ } 条件为 x > 0 时,执行某个操作
range for k, v := range m { /*...*/ } 遍历映射 m
return return x + y 从函数中返回 x + y
select select { case <-ch: /*...*/} 多路通道选择
switch switch x { case 1: /*...*/ } 多分支选择
defer defer fmt.Println("bye") 延迟执行 fmt.Println("bye") 直到函数退出
go go doSomething() 在新的 goroutine 中执行 doSomething() 函数

三、Go的标识符定义

标识符是编程语言中用于识别各种编程元素(如变量、函数、类型等)的名字。在Go语言中,标识符有一组特定的规则和约定。下面将详细解析这些规则和特性。

基础定义

一个标识符是一个以Unicode字母或者下划线(_)开头,并且完全由Unicode字母和Unicode数字组成的单词。

  • Unicode字母:这些是定义在Unicode标准8.0中的Lu、Ll、Lt、Lm和Lo分类中的字符。
  • Unicode数字:这些是定义在Unicode标准8.0中的Nd数字字符分类中的字符。

特殊规定

关键字与标识符

Go的关键字不能被用作标识符。这是一个重要的限制,以避免命名冲突和语

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Go学习笔记3 下一篇Go Switch

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目