go语法简介|Go主题月

436 阅读1分钟

基本语法

go语言是从package中构建的,每个go项目中必须要有一个package名为main的包和一个main函数

下面就是一个简单的go程序


 // 包名
 package main

 // 导入包
 import "fmt"

 // 函数
 func main(){
     fmt.Println("hello go!")
 }

注释

go支持两种注释,单行注释多行注释

  • 单行注释
    // 注释的内容
    func test(){
        fmt.Println("hello go!")
    }
  • 多行注释
    /*
        多行注释
        第二行
        第三行
    */
    func test(){
        fmt.Println("hello go!")
    }

特殊函数init

这个函数会先于main函数被调用,所以可以用它来初始化一些值

代码示例:

package main

import "fmt"

func init() {
	fmt.Println("我是init函数")
}

func main() {
	fmt.Println("我是mian函数")
}

输出:

我是init函数
我是mian函数

变量赋值

单个赋值

    var x = 1

    //or

    var x int
    x = 1

    // or

    x:=1

多个赋值

    var x,y = 1,2

    //or

    var x,y int
    x=1
    y=2

    //or

    x,y := 1,2

因式分解法赋值

用于声明全局变量

    var (
        x = 1
        y = 2
    )

    //or

    var (
        x int
        y int
    )
    x=1
    y=2

常量

关键字const用于赋值常量

// 格式1    显式类型定义
const num int = 9

// 格式2  可以省略类型  隐式类型定义
const num = 9

// 格式3    同类型多重复制
const num, size = 9, 3

// 格式4    多类型多重赋值
const num, isture = 9, true

// 格式5    因式分解赋值
const (
	A = 1
	B = 2
	ISTRUE = true
)

iota

iota是特殊常量,在const关键字出现时被重置为0const中每新增一行常量声明,iota计算+1

package main

import "fmt"

func main() {
	fmt.Println(A)
	fmt.Println(B)
	fmt.Println(C)
	fmt.Println(D)
}

const (
	A = iota
	B
	C
	D
)

输出:

0
1
2
3