变量定义和使用 | Let’s GO

Go 做棵大树 1年前 (2023-03-05) 439次浏览 0个评论
文章目录[隐藏]

golang #学习 #go 基础

声明变量

go 使用 var 声明变量,类似 JavaScript,但又不同,变量定义方式如下

// 声明单个变量
var name string;

// 声明 多个相同数据类型的变量,firstName lastName 均为 string 类型
var firstName, lastName string;

// 通过声明块来声明变量
var (
 firstName, lastName string;
 age int;
)

通过 var 关键字表明要声明变量,var 后接变量名称 再接 变量类型 即可实现变量的定义。和 Java 先声明数据类型,后确定变量名称的声明方式不同。

String name;
String firstName, lastName;
int age;
  1. 支持同时定义多个同类型变量;通过在变量名称后面添加逗号 (,)即可。
  2. 支持通过使用 var 关键字后面拼接括号的方式定义声明块,就像通过一个专用块来声明变量一样。

初始化变量

Go 中,可以通过多种方式初始化变量。 继续同一个示例,你可以使用此代码初始化每个变量:

// 声明单个变量
var name string = "BEATREE";

// 通过声明块来声明变量
// 通过声明块来声明变量

var (
 firstName string;
 lastName string = "Xiao";
 age1 int;
 age int = 18;
)

func main() {
 fmt.Println(name);             // BEATREE
 fmt.Println(firstName);        // 空白
 fmt.Println(lastName);         // Xiao
 fmt.Println(age1);             // 0
 fmt.Println(age);              // 18
}

如果我们再定义的适合就对变量进行初始化,则不需要指定其类型,因为当你使用具体值初始化该变量时,Go 会推断出其类型。 例如,你可以用此方式声明并初始化变量:

var (
 firstName string;
 lastName = "Xiao";
 age1 int;
 age = 18;
)

其他方式初始化变量

除了以上的方式外,还支持其他方式对变量进行初始化.

在单行中声明和初始化变量。 使用逗号将每个变量名称隔开,并对每个变量按顺序赋予值。

var (
 firstName, lastName, age = "Eri", "Xiao", 18
)

通过使用 := 方式,实现变量的定义与初始化,省去 var 声明

func main() {
 firstName, lastName := "Eri", "Xiao"
 age := 18
 fmt.Println(firstName, lastName, age)
}

使用冒号等于号时,要声明的变量必须是新变量,否则会覆盖之前变量的值

func main() {
 firstName := "test";
 firstName, lastName := "Eri", "Xiao"
 age := 18
 fmt.Println(firstName, lastName, age)     // Eri Xiao 18
}

不能在函数外部使用该种方式声明,也就是说只能定义局部变量,在声明函数外的变量时,必须使用 var 关键字执行此操作。

firstName := "test";

func main() {
 fmt.Println(firstName, lastName, age)
}

// 编译报错:syntax error: non-declaration statement outside function body

变量必须被使用

Go 中, 当你声明了一个变量但不使用它时,Go 会抛出错误,而不是像某些其他编程语言一样抛出警告。

// 定义不使用的变量
func main() {
 firstName := "test";
 firstName, lastName := "Eri", "Xiao"
 age := 32
 fmt.Println(firstName, age)
 // lastName 定义后未被使用
 /* # command-line-arguments
    package2\varibles.go:32:13: lastName declared and not used
 */
}

常量定义

我们有时需要在代码中使用不变的量,也就是常量。 Go 支持使用常量。 用于声明常量的关键字是 const

Java Go
final String NAME = "BEATREE" const NAME = "BEATREE"

与变量一样,Go 可以通过分配给常量的值推断出类型。 在 Go 中,常量名称通常以 混合大小写字母全部大写字母书写

如果需要在一个块中声明多个常量,可以按如下所示执行:

const (
 StatusOK = 0
 StatusConnectionReset = 1
 StatusOtherError = 2
)               // FROM MICROSOFT LEARN

常量和变量之间既有相似之处,也有一些重要差异。 例如:

  1. 可以在不使用常量的情况下声明常量,并且不会收到错误消息。go 中未使用的变量会被提示错误.
  2. 不能使用冒号等于号来声明常量。

做棵大树 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明变量定义和使用 | Let’s GO
喜欢 (0)
[欢迎投币]
分享 (0)
关于作者:
一个整天无所事事的,有时候忽然热血的孩子
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址