var 声明变量

05 var 声明变量


1 基本格式

// 类型放在名字的后面,行尾无需分号
var name string
var age int
var isOk bool

=

2 批量声明

var (
    a string
    b int
    c bool
    d float32
)

=

3 变量初始化

Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作

变量若不赋值,则值为该类型的默认值

各类型的初始化默认值:

  • 整型和浮点型变量的默认值为【0】
  • 字符串变量的默认值为【空字符串】
  • 布尔型变量默认为【false】
  • 切片、函数、指针变量的默认为【nil】
声明同时指定初始值 =

可在声明变量的时候为其指定初始值:

var 变量名 类型 = 表达式

var name string = "Q1mi"
var age int = 18

// 同时多个
var name, age = "Q1mi", 20
声明时省略类型

可省略类型(此时会自动根据赋值来推导类型)

var name = "Q1mi"
var age = 18

=

4 短变量声明

在函数内部:短变量声明【使用 :=

package main

import (
        "fmt"
)

var m = 100  // 全局变量 m

func main() {
        n := 10
        m := 200  // 此处表示声明局部变量 m   关键点:仅在函数内部有效
        fmt.Println(m, n)
}

=

5 匿名变量

多重赋值时忽略其中某个值(使用下划线占位)

匿名变量不占用命名空间,不会分配内存,所以匿名变量不存在重复声明的问题

  1. 函数外的每个语句都必须以关键字开始(var、const、func等)
  2. := 不能用在函数外
  3. _ 多用于占位,表示忽略值
func foo() (int, string) {
        return 10, "Q1mi"
}

func main() {
        x, _ := foo()
        _, y := foo()
        fmt.Println("x=", x)
        fmt.Println("y=", y)
}


// 赋值结果:
x=10
y=Q1mi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值