目录

Go-基础语法

Go 基础语法

Identifiers 标识符

Go的程序员自己能够命名的内容叫做标识符
例如:变量、常量、函数、结构体、接口……

标识符命名方式

(结尾【*】才Go语言支持)

  • 【*】cameCase: 驼峰命名法 - helloWorld/getCurrentTime
  • 【*】ParseCase: 帕斯卡命名法 - HelloWorld/GetCurrentTime
  • 【*】snake_case: 蛇形命名法 - hello_world/HELLO_WORLD
  • 【*】kebab_case【目录命名】: 中横线命名法 - hello-world
  • 【x】space case: 空格命名法 - hello world

标识符要素

(除开下划线以外的所用符号都不可以使用)

  1. 大小写字母
  2. 数字
  3. 下划线

命名规则

  1. 不能以数字开头 123 X -> asc123
  2. 不能带有除下划线以外的符号
  3. 不允许有空格命名法
  4. 严格区分大小写字母
  5. 语义清晰、简洁
  6. 关键字(25个)与预定义标识符(36个)不能作为标识符

https://i-blog.csdnimg.cn/direct/11676f1ab43f41b4b98fb93a9de26d71.png

https://i-blog.csdnimg.cn/direct/6fae2caf355944aaa4d6e4d7bf90f6ad.png

项目的命名规范

项目名中横线隔开 全部小写字母
包名包名与目录名需要保持一致 全部小写字母 不能使用下划线 - 语义简洁 不能用标准库名称 os/fmt
模块名全部小写字母 单词以下划线隔开
常量全部大写字母  用下划线隔开
结构体遵循变量的命名规则
接口名采用 【 er 】结尾 遵循变量的命名规
函数名和普通变量 (严格区分大小写字母)任何需要在包外使用的标识符都必须以大写字母开头 (fmt.Println() -> public) 任何不需要在包外使用的标识符都必须以大写字母开头 (user.getName() -> private)

变量

什么是变量

  1. 变量最早是数学工具,当我们在计算中,不确定值什么的都时候用变量进行暂时的替代(抽象)以完成运算,且变量是可变的不确定量,在不同的运算中,变量所表示的最终值不同,所以变量是可变的量

  2. 变量在计算机中的概念

    1. 表示值的抽象工具,例如 x=1 => 1赋值给x (【=】赋值符号)
    2. 存储计算结果的工具,例如 y = x + 1 => 2

内存中表示的方式

标识符内存空间
x0x00011
y0x00022
z0x00033

0x0001 = 1
0x0002 = 2
0x0003 = 0x0001 + 0x0002

x = 1
y = 2
z = x + y

总结:变量方便计算机语言编程时,从内存中取值和向内存中存值的工具

变量的声明格式

关键字变量标识符变量类型赋值符号
varxint=1
  1. 变量声明可以不初始化(var x int)
  2. 变量初始化可以在变量声明后
  3. 变量赋值或者初始化不是使用变量
  4. 值必须与变量声明时给出的类型保持一致

!注意事项

  1. 变量必须在声明后使用
  2. 变量声明后必须使用
  3. 同一作用域下不能重复声明一个变量
  4. 多个变量可以使用单一声明
  5. 多个变量可以批量声明
  6. 可以使用类型推断
  7. 可以使用短变量(【:=】)语法 (只能使用在函数内部,不能使用函数外部)
  8. 短变量可以批量声明赋值
  9. 可以使用匿名变量(采用下划线表示)