0
点赞
收藏
分享

微信扫一扫

go变量声明

最不爱吃鱼 2022-02-20 阅读 51
package main

import "fmt"

func main() {
	//	1.声明未初始化的变量
	// var 变量名 变量类型
	var a int
	fmt.Println("a", a)
	//	2.批量声明未初始化的变量
	var (
		b string
		c float32
		d []float64
		e func() bool
		f struct {
			  x int
			  y bool
		  }
	)
	//未初始化变量的默认值有如下特点:
	//• 整型和浮点型变量默认值:0。
	//• 字符串默认值为空字符串。
	//• 布尔型默认值为false。
	//• 函数、指针变量、切片默认值为nil。
	fmt.Println("b", b)
	fmt.Println("c", c)
	fmt.Println("d", d)
	fmt.Println("e", e)
	fmt.Println("f", f)

	// 3.声明初始化变量
	// 方式1, var 变量名 变量类型 = 表达式
	// 方式2, 变量名 := 表达式
	// 方式3, var 变量名 = 表达式
	var m string = "你好"
	n := 123
	var p = 3.14
	fmt.Println(m)
	fmt.Println(n)
	fmt.Println(p)

	/*
		使用 := 赋值操作符可以高效地创建一个新的变量,称为初始化声明。声明语句省略了 var 关键字,
		变量类型将由编译器自动推断。这是声明变量的首选形式,但是它只能被用在函数体内,
		而不可以用于全局变量的声明与赋值。该变量名必须是没有定义过的变量,若定义过,将发生编译错误
	*/

	// 变量多重赋值
	var g int = 10
	var h int = 8
	fmt.Println(g, h)
	g, h = h, g
	fmt.Println(g, h)

}

举报

相关推荐

0 条评论