Go指南1-变量与常量

187 阅读1分钟

变量

变量声明方式

1.var i int: 只声明,未初始化。未初始化会自动赋初值,而int类型的默认值为0。

// 只声明未初始化
func varUnInit() {
	var i int
	fmt.Println(i)  // 0
}

2.var i int = 1: 声明并初始化

3.var i = 1: 声明并初始化,类型自动推断

func varAutoIdentity() {
	var i = 1;
	fmt.Println(i)
}

4.var i, j = 1, 2: 声明并初始化多个变量

5.i := 1: 声明并初始化,很简洁,是一种常见的声明方式 5.1 这种方式要求变量i之前必须没有声明 5.2 这种方式只支持函数体内使用,其他范围必须用var

公有变量与私有变量

在Golang中,首字母大写的变量(包括函数)是公有变量,可以被其他模块(文件)引用; 首字母小写的变量是私有变量,只能在本模块(文件)引用。

package main

import (
	"fmt"
	"math"
)
func main() {
    fmt.Println(math.Pi) // 3.141592653589793
    
    fmt.Println(math.pi) // cannot refer to unexported name math.pi
}

常量

1.常量的声明与变量类似,只不过是使用 const 关键字。

2.常量可以是字符、字符串、布尔值或数值。

3.常量不能用 := 语法声明

const World = "Hello World"
func constantVar() {
	fmt.Println(World)

	const Truth = true
	fmt.Println(Truth)
}