初学go语言

我爱海鲸 2023-06-21 02:17:56 go语言学习

简介go

菜鸟教程

https://www.runoob.com/go/go-environment.html

开发环境:All releases - The Go Programming Language

执⾏go程序由⼏种⽅式
⽅式⼀:使⽤go run命令
step1:使⽤快捷键win+R,输⼊cmd打开命令⾏提示符
​ step2:进⼊helloworld.go所在的⽬录
 step3:输⼊go run helloworld.go命令并观察运⾏结果。
⽅式⼆:使⽤go build命令
​ step1:使⽤快捷键win+R,输⼊cmd打开命令⾏提示符
​ step2:进⼊helloworld.go所在的⽬录
​ step3:输⼊go build helloworld.go命令进⾏编译,产⽣同名的
helloworld.exe⽂件
​ step4:输⼊helloworld.exe,执⾏
⽅式三:使⽤ go playground
​ step1:打开⼀下⽹址https://play.golang.org
Goland常⽤快捷键
(⼀)、⽂件相关快捷键:
1. CTRL+E,打开最近浏览过的⽂件。
2. CTRL+SHIFT+E,打开最近更改的⽂件。
3. CTRL+N,可以快速打开struct结构体。
4. CTRL+SHIFT+N,可以快速打开⽂件。
(⼆)、代码格式化:
1. CTRL+ALT+T,可以把代码包在⼀个块内,例如if{…}else{…}。
2. CTRL+ALT+L,格式化代码。
3. CTRL+空格,代码提示。
4. CTRL+/,单⾏注释。CTRL+SHIFT+/,进⾏多⾏注释。
5. CTRL+B,快速打开光标处的结构体或⽅法(跳转到定义处)。
6. CTRL+“+/-”,可以将当前⽅法进⾏展开或折叠。
(三)、查找和定位
1. CTRL+R,替换⽂本。
2. CTRL+F,查找⽂本。
3. CTRL+SHIFT+F,进⾏全局查找。
4. CTRL+G,快速定位到某⾏。
(四)、代码编辑
1. ALT+Q,可以看到当前⽅法的声明。
2. SHIFT+ENTER,可以向下插⼊新⾏,即使光标在当前⾏的中间。
3. CTRL+Backspace,按单词进⾏删除或删除光标所在⾏。
4. CTRL+X,剪切当前光标所在⾏。
5. CTRL+D,复制当前光标所在⾏。
6. ALT+SHIFT+UP/DOWN,可以将光标所在⾏的代码上下移动。
7. CTRL+SHIFT+U,可以将选中内容进⾏⼤⼩写转化

安装完go的开发环境与开发工具后,编写第一个程序:

package main
import "fmt"
func main() {
 /* 这是我的第⼀程序 */
 fmt.Println("Hello, World!")
}

程序解释
1. 第⼀⾏代码 package main 定义了包名。必须在源⽂件中⾮注释的第⼀⾏
指明这个⽂件属于哪个包,如:package main。package main表示⼀个可
独⽴执⾏的程序,每个 Go 应⽤程序都包含⼀个名为 main 包。

2. 下⼀⾏ import "fmt" 告诉 Go 编译器这个程序需要使⽤ fmt 包,fmt 包实
现了格式化 IO(输⼊/输出)的函数。

3. 下⼀⾏ func main() 是程序⼊⼝。main 函数是每⼀个可执⾏程序所必须包
含的,⼀般来说都是在启动后第⼀个执⾏的函数,如果有 init() 函数则会先
执⾏init()函数。

4. 下⼀⾏ /*...*/ 是注释,在程序执⾏时将被忽略。单⾏注释是最常⻅的注释
HelloWorld程序解释及Go编码规范
形式,你可以在任何地⽅使⽤以 // 开头的单⾏注释。多⾏注释也叫块注释,
均已以 /* 开头,并以 */ 结尾,且不可以嵌套使⽤,多⾏注释⼀般⽤于⽂档
描述或代码⽚段。

5. 下⼀⾏ fmt.Println(...) 可以将字符串输出到控制台,并在最后⾃动增加换
⾏字符 \n。 使⽤ fmt.Print("hello, world\n") 可以得到相同的结果

Go语⾔编码规范
(⼀)、注释
单⾏注释是最常⻅的注释形式,你可以在任何地⽅使⽤以 // 开头的单⾏注

多⾏注释也叫块注释,均已以 /* 开头,并以 */ 结尾,且不可以嵌套使
⽤,多⾏注释⼀般⽤于⽂档描述或注释成块的代码⽚段

(⼆)、标识符

1、标识符⽤来命名变量、类型等程序实体。⼀个标识符实际上就是⼀个或是多
个字⺟(A~Z和a~z)数字(0~9)、下划线_组成的序列,但是第⼀个字符必须是字
⺟或下划线⽽不能是数字。

2、Go不允许在标识符中使⽤@、$和%等标点符号。

3、Go是⼀种区分⼤⼩写的编程语⾔。因此,Manpower和manpower是两个不
同的标识符。

4、以下是⽆效的标识符:
1xy(以数字开头)
case(Go 语⾔的关键字)
chan(Go 语⾔的关键字)
x+y(运算符是不允许的)

(三)、Go 语⾔的空格

1、Go 语⾔中变量的声明必须使⽤空格隔开,如:var age int;

2、语句中适当使⽤空格能让程序更易阅读。

3、在变量与运算符间加⼊空格,程序看起来更加美观,如:
a = x + y;

(四)、语句的结尾

1、在 Go 程序中,⼀⾏代表⼀个语句结束。Go语⾔中是不需要类似于Java需要
分号结尾,因为这些⼯作都将由 Go 编译器⾃动完成;

2、如果打算将多个语句写在同⼀⾏,它们则必须使⽤ 分号“;” ⼈为区分,但在
实际开发中并不⿎励这种做法。

(五)、可⻅性规则

1、Go语⾔中,使⽤⼤⼩写来决定标识符(常量、变量、类型、接⼝、结构或函
数)是否可以被外部包所调⽤。

2、以⼀个⼤写字⺟开头,那么使⽤这种形式的标识符的对象就可以被外部包的
代码所使⽤(使⽤时程序需要先导⼊这个包),如同⾯向对象语⾔中的 public。

3、如果以⼩写字⺟开头,则对包外是不可⻅的,但是他们在整个包的内部是可
⻅并且可⽤的,像⾯向对象语⾔中的 private 。

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 语⾔还有 36 个预定义标识符:

append  bool  byte  cap  close  complex  complex64

copy  false  float32  float64  imag  int  int8

int32  int64  iota  len  make  new  nil

print  println  real  recover  string  true  uint

Go 程序结构组成

(⼀)、Go⼀般结构
// 当前程序的包名
package main
// 导⼊其他包
import . "fmt"
// 常量定义
const PI = 3.14
// 全局变量的声明和赋值
var name = "gopher"
// ⼀般类型声明
type newType int
// 结构的声明
type gopher struct{}
// 接⼝的声明
type golang interface{}
// 由main函数作为程序⼊⼝点启动
func main() {
 Println("Hello World!")
}

(⼆)、Go ⽂件的基本组成部分
1. 包声明
2. 引⼊包
3. 函数
4. 变量
5. 语句 & 表达式
6. 注释

(三)、Go⽂件结构组成
1、Go 程序是通过 package 来组织的。
只有 package 名称为 main 的包可以包含 main 函数。
⼀个可执⾏程序有且仅有⼀个 main 包。
通过 import 关键字来导⼊其他⾮ main 包。
可以通过 import 关键字单个导⼊,也可以同时导⼊多个

2、程序⼀般由关键字、常量、变量、运算符、类型和函数组成。

3、程序中可能会使⽤到这些分隔符:括号 (),中括号 [] 和⼤括号 {}。

4、程序中可能会使⽤到这些标点符号:
点.
逗号,
分号;
冒号:
省略号(三个点) …

4、通过 const 关键字来进⾏常量的定义。

5、通过在函数体外部使⽤ var 关键字来进⾏全局变量的声明和赋值。

6、通过 type 关键字来进⾏结构(struct)和接⼝(interface)的声明。

7、通过 func 关键字来进⾏函数的声明

你好:我的2025