首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >go基础--变量

go基础--变量

作者头像
小田测测看
发布2026-06-17 17:55:10
发布2026-06-17 17:55:10
720
举报

本文基于平时的代码练习,梳理 Go 语言中变量的核心用法

基础操作:声明 → 赋值 → 使用

变量是 Go 中存储数据的基本单元,需遵循「先声明、后使用」的原则,核心流程为「声明变量→给变量赋值→使用变量」。

1.示例

代码语言:javascript
复制
package main
import"fmt"

func main(){
    // 1. 变量声明:用 var 关键字,指定变量名和类型(int 类型)
    var age int// 此时 age 有默认值 0(int 类型默认值)
    
    // 2. 变量赋值:给已声明的变量赋具体值
    age = 18     // 赋值后 age 的值变为 18
    
    // 3. 变量使用:通过变量名调用数据
    fmt.Println("age = ", age)  // 输出:age =  18

    // 简化:声明 + 赋值 合并为一句(推荐,减少代码量)
    var age2 int = 19// 声明时直接赋值,无需默认值过渡
    fmt.Println("age2 = ", age2)  // 输出:age2 =  19
}

使用方式

Go 支持多种变量声明方式,可根据场景选择「指定类型」或「自动推断类型」,核心区别在于是否显式定义类型。

方式 1:指定类型 + 直接赋值

语法var 变量名 类型 = 值

代码语言:javascript
复制
var num int = 18  // 显式声明 int 类型,赋值 18
fmt.Println(num)  // 输出:18

方式 2:指定类型 + 不赋值

语法var 变量名 类型

• 备注常见类型零值:int→0、string→空串 ""、float→0.0、bool→false。

代码语言:javascript
复制
var num2 int  // 仅声明 int 类型,默认值 0
fmt.Println(num2)  // 输出:0

方式 3:自动类型推断

语法var 变量名 = 值

代码语言:javascript
复制
var num3 = "tom"  // 未指定类型,Go 推断为 string 类型
fmt.Println(num3)  // 输出:tom

Go 会根据「赋值的值」自动推断变量类型

方式 4:短变量声明

语法变量名 := 值

代码语言:javascript
复制
func main(){
    sex := "男"  // 函数内使用短变量,自动推断为 string 类型
    fmt.Println(sex)  // 输出:男
}

仅能在函数内使用(全局变量不支持)

多变量

Go 支持批量声明多个变量,减少重复的 var 关键字,分为「局部多变量」和「全局多变量」两种场景。

同类型多变量

语法var 变量1, 变量2, 变量3 类型

代码语言:javascript
复制
var n1, n2, n3 int  // 3 个变量均为 int 类型,默认值 0
fmt.Println(n1, n2, n3)  // 输出:0 0 0

不同类型多变量

语法var 变量1, 变量2, 变量3 = 值1, 值2, 值3

代码语言:javascript
复制
var n4, name, n5 = 10, "jack", 7.8  // n4=int,name=string,n5=float64
fmt.Println(n4)    // 输出:10
fmt.Println(name)  // 输出:jack
fmt.Println(n5)    // 输出:7.8

短变量多声明

语法变量1, 变量2 := 值1, 值2

代码语言:javascript
复制
n6, height := 6.9, 100.6  // n6=float64,height=float64
fmt.Println(n6, height)   // 输出:6.9 100.6

全局多变量声明(函数外)

语法:用 var () 包裹多个变量,每个变量占一行。

代码语言:javascript
复制
package main
import "fmt"

// 全局变量批量声明(推荐写法)
var (
    n9  = 500     // int 类型
    n10 = "netty" // string 类型
)

func main(){
    fmt.Println(n9, n10)  // 输出:500 netty
}

变量三要素:声明(var:=)、类型(显式指定或自动推断)、值(赋值或零值)

#Go #go基础

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程拾光 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基础操作:声明 → 赋值 → 使用
  • 1.示例
  • 使用方式
  • 方式 1:指定类型 + 直接赋值
  • 方式 2:指定类型 + 不赋值
  • 方式 3:自动类型推断
  • 方式 4:短变量声明
  • 多变量
  • 同类型多变量
  • 不同类型多变量
  • 短变量多声明
  • 全局多变量声明(函数外)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档