一、GO 语言结构
- 基础组成 1.包声明 2.引入包 3.函数 4.变量 5.语句&表达式 6.注释
- 实例
package main
import "fmt"
func main() { /* 这是我的第一个简单的程序 */ fmt.Println("hello world!") }
第一行代码 package main 定义了包名。你必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包。
下一行 import "fmt" 告诉 Go 编译器这个程序需要使用 fmt 包(的函数,或其他元素),fmt 包实现了格式化 IO(输入/输出)的函数。
下一行 func main() 是程序开始执行的函数。main 函数是每一个可执行程序所必须包含的,一般来说都是在启动后第一个执行的函数(如果有 init() 函数则会先执行该函数)。
下一行/.../是注释,在程序执行时将被忽略。单行注释是最常见的注释形式,你可以在任何地方使用以 // 开头的单行注释。多行注释也叫块注释,均已以 /* 开头,并以 */ 结尾,且不可以嵌套使用,多行注释一般用于包的文档描述或注释成块的代码片段。
下一行 fmt.Println(...) 可以将字符串输出到控制台,并在最后自动增加换行字符 \n。 使用 fmt.Print(“hello, world\n”) 可以得到相同的结果。 Print 和 Println 这两个函数也支持使用变量,如:fmt.Println(arr)。如果没+有特别指定,它们会以默认的打印格式将变量 arr 输出到控制台。
当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出;标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的。
- 执行 Go 程序 执行go run test.go可以看到输出为hello world! 执行go build test.go可以生成二进制文件test.exe
二、Go 语言基础语法
- Go 标记 Go 程序可以由多个标记组成,可以是 关键字,标识符,常量,字符串,符号
如以下 GO 语句由 6 个标记组成:
fmt.Println("Hello, World!")
//6 个标记是(每行一个):
fmt . Println ( "Hello, World!" )
- 行分隔符 在 Go 程序中,一行代表一个语句结束
如果你打算将多个语句写在同一行,它们则必须使用;人为区分,但在实际开发中我们并不鼓励这种做法
以下为两个语句:
fmt.Println("Hello, World!") fmt.Println("百度:baidu.com") 3. 注释 注释不会被编译,每一个包应该有相关注释
单行注释是最常见的注释形式,你可以在任何地方使用以//开头的单行注释。
多行注释也叫块注释,均已以/开头,并以/结尾。
// 单行注释
/*
你好
欢迎来南京
*/
4. 标识符
标识符用来命名变量、类型等程序实体
一个标识符实际上就是一个或是多个字母(AZ和az)数字(0~9)、下划线_组成的序列,但是第一个字符必须是字母或下划线而不能是数字。
//以下是有效的标识符
mahesh kumar abc move_name a_123
myname50 _temp j a23b9 retVal
//以下是无效的标识符 1ab(以数字开头) case(Go 语言的关键字) a+b(运算符是不允许的)
- 字符串连接 Go 语言的字符串可以通过 +实现:
实例
package main import "fmt" func main() { fmt.Println("hello" + "world") }
//以上实例输出结果为:
helloworld
- 关键字 下面列举了 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 copy false float32 float64 imag int32 int64 iota len make print println real recover string 程序一般由关键字、常量、变量、运算符、类型和函数组成。
程序中可能会使用到这些分隔符:括号 (),中括号 [] 和大括号 {}。
程序中可能会使用到这些标点符号:. , ; : 和 …
- Go 语言的空格 Go 语言中变量的声明必须使用空格隔开 var age int; //语句中适当使用空格能让程序更易阅读
//无空格: fruit=apples+oranges;
//在变量与运算符间加入空格,程序看起来更加美观,如: fruit = apples + oranges;
- 格式化字符串 Go 语言中使用 fmt.Sprintf 格式化字符串并赋值给新串 package main
import ( "fmt" )
func main() { // %d 表示整型数字,%s 表示字符串 var age = 18 var time = "2022-3-15" var url = "age=%d,time=%s" var target_url = fmt.Sprintf(url, age, time) fmt.Println(target_url) }
输出结果为:
age=18,time=2022-3-15