乐趣区

关于go:三分钟学会go语言的变量定义

本文参加了思否技术征文,欢送正在浏览的你也退出。

前言

特地阐明: 本文只适宜老手学习

这篇文章带咱们入门 go 语言的定义变量的形式,其实和 javascript 很类似,所以特意总结在此。

在 go 语言中,也有变量和常量两种,首先咱们来看变量的定义,定义变量咱们分为定义单个变量和多个变量。

定义单个变量

在定义单个变量中,咱们通过 var 关键字来定义一个变量,其后跟变量名和变量类型,其中变量类型能够省略,语法结构如下:

var < 变量名 > < 变量类型 >

例如:

var name string

以上代码示意定义一个变量名为 name,变量类型为字符串的变量,留神 go 语言定义变量的类型始终是在最初。

能够看到,和 js 定义变量区别不大,只不过是多了一个类型申明,其中这个类型申明还能够省略。

定义多个变量

在 go 语言中,咱们通过 , 操作符来定义多个变量, 这里定义多个变量也分为两种状况,一种是多个变量都是同一类型,另外一种则是不同类型的多个变量,咱们先来看第一种。

定义雷同类型的多个变量

和定义单个变量一样,也是应用 var 关键字来定义,并且通过 , 来分隔,语法结构如下:

var < 变量名 1 >,< 变量名 2 >,< 变量名 3 >,... < 变量类型 >

如:

var name1,name2,name3 string

以上定义了 name1,name2,name3 3 个变量,变量的类型都是 string。

能够看到以上是定义雷同类型的多个变量, 那么咱们应该如何定义不同类型的多个变量呢?

很简略,用 () 包裹起来,而后也是应用 , 分隔,在每个变量名前面紧跟变量类型即可,语法如下:

var (< 变量名 1 > < 变量 1 类型 >,< 变量名 2 > < 变量 2 类型 >...)

例如以下代码:

var (name string,age int)

是不是很简略?

变量的初始化

在 go 语言中,定义了变量,同样也会有初始化的操作,也就是说给变量初始化值,也是通过 = 操作符后跟值即可。语法结构如下:

var < 变量名 > < 变量类型 >? = < 变量值 >

例如:

var name string = "eveningwater"

变量类型的省略

其实咱们在初始化变量的时候能够省略变量类型,而后 go 编译器会在编译的时候帮咱们主动推导变量类型,这几乎就是在写 javascript 啊,这也是我在以上语法变量类型那一块中标注? 的起因,就示意能够写能够不写。例如以上示例代码就能够写成:

var name = "eveningwater"

如此看来,咱们定义多个变量同样也能够省略变量类型,如:

var (name,age) = "eveningwater",26

又或者是:

var name1,name2  = "eveningwater","xxx"

var 关键字的省略(简短申明)

go 语言的定义变量名的关键字 var 也能够省略,这也是我没有想到的,如下所示:

name1,name2 := "eveningwater","xxx"

感觉挺神奇的,是吧!go 把这种省略了 var 和 type 的申明叫做 简短申明。这样一来咱们就能够在定义变量的时候用这个 ”:=” 来定义变量了,不,你想多了,应用这种形式来定义变量是有限度的,那就是这种形式只可能作用在函数外部,如果咱们要定义全局变量的话,还是要老老实实的写 var 关键字。

全局变量与局部变量

通过以上的阐明,咱们晓得了定义全局变量和定义局部变量的形式,如下:

var a string = "hello" // 全局变量
func test() {
    b := "world" // 局部变量
    c := a + b
    fmt.Printf("%s \n", c)
}

特地的变量名

go 语言有个很非凡的变量名,那就是下划线 ”_”, 为什么说它非凡呢,因为定义它的值都会被抛弃,没错,就是抛弃,例如:

_,num = 35,34

其中_变量值为 35 将会被抛弃,最初就只剩下值为 34 的 num 变量了,感觉这种设计也是挺有意思的。

未应用变量的限度

go 语言在编译阶段会对申明但未应用变量报错,比方以下代码就会报错: 申明了 i 变量但并未应用。

package main
func main(){
    // 编译阶段报错
    var i int
}

常量

常量其实也就是在程序编译阶段定下来的值吗,无奈被批改,在 go 语言中常量也能够被定义成数值,布尔值或者是字符串等类型。它的语法结构如下:

const variableName = value;

例如:

const num int = 10;

其中常量的类型如果须要也能够加上。

以上就是本文内容了,感激大家观看,看完本文,想来应该要不了几分钟,几分钟就把握了 go 语言定义变量的概念和形式,想来还是值得的,非常适合老手学习,哈哈哈。

退出移动版