我的编程空间,编程开发者的网络收藏夹
学习永远不晚

go语言的变量定义示例详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

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语言定义变量的概念和方式,想来还是值得的,非常适合新手学习

以上就是go语言的变量定义示例详解的详细内容,更多关于go语言变量定义的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

go语言的变量定义示例详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

go语言的变量定义示例详解

这篇文章主要为大家介绍了go语言的变量定义示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-12-20

Go语言的变量与常量怎么定义

这篇文章主要介绍“Go语言的变量与常量怎么定义”,在日常操作中,相信很多人在Go语言的变量与常量怎么定义问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go语言的变量与常量怎么定义”的疑惑有所帮助!接下来,请跟
2023-07-05

Go语言变量怎么定义和使用

这篇“Go语言变量怎么定义和使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Go语言变量怎么定义和使用”文章吧。在Go语言
2023-07-04

详解Go语言变量作用域

目录局部变量全局变量形式参数初始化局部和全局变量作用域为已声明标识符所表示的常量、类型、变量、函数或包在源代码中的作用范围。 Go 语言中变量可以在三个地方声明:函数内定义的变量称为局部变量函数外定义的变量称为全局变量函数定义中的变量称为形
2022-06-07

Go语言预定义标识符详解

预定义标识符是 go 语言中的特殊标识符,用于预先定义数据类型、关键字和内置函数等行为。一些常见的预定义标识符包括布尔真值 true 和假值 false、浮点数类型 float32 和 float64、整型类型 int 和 uint、以及关
Go语言预定义标识符详解
2024-04-08

R语言变量赋值的示例

小编给大家分享一下R语言变量赋值的示例,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!变量可以使用向左,向右且等于操作符来分配值。可以使用 print() 或 cat() 函数打印变量的值。cat() 函数将多个项目并成连续
2023-06-14

详解Golang变量的定义方式

Golang变量的定义方法详解,需要具体代码示例在Golang编程语言中,变量是程序中存储和操作数据的基本单元。变量的定义是程序设计中最基础的操作之一。本文将详细介绍Golang中变量的定义方法,并提供具体的代码示例。变量的定义方法:在
详解Golang变量的定义方式
2024-01-18

go语言http模型reactor示例详解

这篇文章主要介绍了go语言http模型reactor,接下来看一段基于reactor的示例,这里运行通过gorunmain.go,本文结合示例代码给大家介绍的非常详细,需要的朋友可以参考下
2023-01-04

go语言题解LeetCode66加一示例详解

这篇文章主要为大家介绍了go语言题解LeetCode66加一示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-12-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录