Golang的标识符命名规则
2024-09-29 13:49:47
Golang的标识符命名规则
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.关键字
1>.Go语言有25个关键字
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语言的关键字用途解释如下:
var 和 const:
用于变量和常量的声明 package 和 import:
用于包导入 func:
用于定义函数和方法 return:
用于从函数返回 defer:
用于在函数退出之前执行 go:
用于并行 select:
用于选择不同类型的通讯 interface:
用于定义接口 struct:
用于定义抽象数据类型 break、case、continue、for、fallthrough、else、if、switch、goto、default:
用于流程控制 chan:
用于channel通讯 type:
用于声明自定义类型 map:
用于声明map类型数据 range:
用于读取slice、map、channel数据
2>.Go 语言有36个预定义的名字
在Go中有很多预定义的名字,基本在内建的常量、类型和函数当中,这些内部预定义的名字并不是关键字,它们是可以重新定义的。 Go语言36个预定义的名字如下所示:
append,bool,byte,cap,close,complex,complex64,complex128,uintptr,copy,false,true,float32,float64,imag,iota,int,
uint,int8,uint8,int16,uint16,int32,uint32,int64,uint64,new,len,make,panic,nil,print,println,real,recover,string
二.标识符命名规则
1>.Go语言命名规则
标识符的命名规则如下:
()允许使用字母、数字、下划线
()不允许使用Go语言关键字
()不允许使用数字开头
()区分大小写 满足上面的Go编译器的要求后,生产环境中推荐命名规则:
()见名知义
咱们自定义的变量名称最好是见名知义,增加代码的可读性,如果你定义了一堆变量你同事不知道你写的啥意思,得根据代码调试就有点坑了,别人得在背后diss你的。
()驼峰命名法
小驼峰式命名法(lower camel case):
第一个单词以小写字母开始,从第二个单词开始首字母大写,例如:myNginxPort
大驼峰式命名法(upper camel case):
每一个单字的首字母都采用大写字母,例如:FirstName、LastName
()下划线命名法
每个单次都小写,各单次之间使用下划线进行分割,例如:my_cluster
2>.案例展示
package main import (
"fmt"
) func main() { /*
标识符的命名规则如下:
(1)允许使用字母、数字、下划线
(2)不允许使用Go语言关键字
(3)不允许使用数字开头
(4)区分大小写 满足上面的Go编译器的要求后,生产环境中推荐命名规则:
(1)见名知义
(2)驼峰命名法
小驼峰式命名法(lower camel case):
第一个单词以小写字母开始,从第二个单词开始首字母大写,例如:myNginxPort
大驼峰式命名法(upper camel case):
每一个单字的首字母都采用大写字母,例如:FirstName、LastName
(3)下划线命名法
每个单次都小写,各单次之间使用下划线进行分割,例如:my_cluster
*/ //小驼峰命名
myNginxPort := "node101.yinzhengjie.org.cn:80"
fmt.Println(myNginxPort) //大驼峰命名
FirstName := "yin"
LastName := "zhengjie"
fmt.Println(FirstName)
fmt.Println(LastName) //下划线命名
my_cluster := "yinzhengjie_bigdata"
fmt.Println(my_cluster) }
最新文章
- 微信浏览器的HTTP_USER_AGENT
- 用exp导数据时遇到oracle 1455的错误
- SpringMVC学习--拦截器
- 百度推出的echarts,制表折线图柱状图饼图等的超级工具(转)
- 为什么数值类型byte取值范围是(-128~127)?
- Hyper-V和Virtual PC的不同
- HtmlParser
- GNU 网络程序
- C# 进程间通信(共享内存)
- Html5 Canvas笔记(2)-Canvas绘图
- 故障公告:docker swarm集群“群龙无首”引发部分站点无法访问
- Hello PyQt5
- install plugin group_replication ERROR 1126 (HY000)
- Dynamics CRM On-Premise V9安装手记
- 2000 ASCII码排序
- c 中打印格式%g
- vue-新建项目-构建-打包-环境切换
- JVM综合调优汇总
- java并发编程基础-ReentrantLock及LinkedBlockingQueue源码分析
- 通过动态包含和Ajax机制抽取Web应用的公共页面