初探Golang(1)-变量
要学习golang,当然要先配置好相关环境啦。
1. Go 安装包下载
https://studygolang.com/dl
在Windows下,直接下载msi文件,在安装界面选择安装路径,然后一直下一步就行了。
在cmd下输入
go version
即可看到go安装成功
2. Goland安装
https://www.jetbrains.com/go/download/download-thanks.html?platform=windows
在官网下载安装包
在安装界面选择安装路径,然后一直下一步就行了。
3. 变量
Go语言是静态强类型语言,所以变量是有明确类型的。变量实质上就是在内存中的一小块空间,用来存储特定类型的可变数据。如果没有变量我们的程序中只能将数值写死都是静态的数据,我们无法更改,变量可以让我们进行动态的操作。在数学概念中变量表示没有固定的值,可以随时改变的数。 例如:除数,减数与被减数等。
3.1 如何声明变量
声明一个变量的语法为:var name type,例如
var age int //声明 未赋值默认为0
语句 var age int 声明了一个类型为 int,名称为 age 的变量。在这里我们没有给它赋任何值。如果一个变量没有被赋予任何值,Go 会自动将这个变量初始化为其类型的 0值
3.2 如何赋值
在声明变量时可以指定其初始值。
声明一个带初值的变量的语法为:var name type = initialvalue,例如:
var age int //声明 未赋值默认为0
age = 18 //赋值//直接根据你所初始化的值,来推导出定义的数据类型
var name = "王钢蛋"
name :="王铁蛋"//简短定义方式 声明并赋值
age := 10
var age = 10
Go语言支持根据数据推导数据类型的方法。所以在定义的时候可以不用写数据类型,直接根据你所初始化的值,来推导出定义的数据类型。如果声明一个变量时提供了初始值,Go可以根据该初始值来自动推导变量的类型。因此如果声明变量时提供了初始值,就可以不必指定其类型。
也就是说,如果声明变量的形式为:var name = initialvalue,Go将根据 initialvalue 自动推导变量 name 的类型。
3.3 多变量定义
多个变量可以在一条语句中声明。
多变量声明的语法为:var name1, name2 type = initialvalue1, initialvalue2,例如:
//var方式声明多变量var a,b,c inta=1 b=2 c=3
//也可以写在一行
var a1,a2,a3 int =10,20,30
//也可以省略类型 根据数据进行类型推导var a1,a2,a3 =10,20,"ago"
//如果是多种类型 也可以使用集合
var(a1 =""a2 =10
)
简短定义方式定义多个变量。 需要注意的是,一个变量在程序中只能够定义一次,重复定义就会报错。
3.4 速记声明
Go 提供了另一种简洁的声明变量的方式。这种方式称为速记声明(shorthand declaratiion)。速记声明使用 := 操作符来声明变量。
速记声明的语法为:name := initialvalue,例如:
age := 10age := 10
3.5 匿名变量
匿名变量也就是没有名字的变量, 开发过程中可能会遇到有些变量不是必须的。匿名变量使用下划线" _ " 表示。 “_” 也称为空白标识符,任何类型都可以使用它进行赋值,而且任何类型赋值后都将直接被抛弃,所以在使用匿名变量时,表示后续代码不需要再用此变量。
3.6 变量的作用域
变量在程序中有一定的作用范围,如果一个变量声明在函数体的外部,这样的变量被认为是全局变量,全局变量在整个包内,也就是当前的package内都可以被调用得到。如果变量定义在函数体内部,则被称之为局部变量。
注意:
- 相同的作用域内, 无论是全局变量还是局部变量, 都不能出现同名的变量
- 变量离开作用域就不能使用
- 局部变量如果没有使用, 编译会报错, 全局变量如果没有使用, 编译不会报错
- :=只能用于局部变量, 不能用于全局变量
- :=如果用于同时定义多个变量, 会有退化赋值现象,如果通过:=定义多个变量, 但是多个变量中有的变量已经在前面定义过了, 那么只会对没有定义过的变量执行:=, 而定义过的变量只执行=操作
例如:
num2 := 123
num2, value2 := 456, 789
fmt.Printf("%d, %d", num2, value2) //456, 789
初探Golang(1)-变量相关推荐
- Golang 环境变量须知
1.前言 无论你是使用 Windows.Linux 还是 Mac 操作系统来开发 Go 应用程序,在安装好 Go 安装语言开发工具之后,都必须配置好 Go 语言开发所要求的 环境变量,才算初步完成 G ...
- python中将str转成数字_python初探: 数据类型与变量
python初探: 数据类型与变量 欢迎来到python之旅的初探,将从最基础开始来了解这个火了很多年的编程语言,是什么让这门语言魔力四射呢?从现在开始一起去探索和发现吧. <<<& ...
- golang简短变量声明
golang简短声明变量只能在函数体内使用,不能在全局使用 package mainimport "fmt"test1 := 1func main(){test2 := 2 fmt ...
- Golang之变量去哪儿
写过C/C++的同学都知道,调用著名的malloc和new函数可以在堆上分配一块内存,这块内存的使用和销毁的责任都在程序员.一不小心,就会发生内存泄露,搞得胆战心惊. 切换到Golang后,基本不会担 ...
- golang语言变量定义、打印、占位符
文章目录 题外话 go变量定义 Printf.Println.Print Package fmt 详细介绍 题外话 为什么在有些地方使用go,有些地方使用golang? 两者的关系是什么? 事实上Go ...
- 初探Golang(4)-map和流程控制语句
1.map map 是引用类型的,如果声明没有初始化值,默认是nil.空的切片是可以直接使用的,因为他有对应的底层数组,空的map不能直接使用.需要先make之后才能使用. //1, 声明map 默认 ...
- 获取Golang环境变量的三种方式
环境变量是应用软件参数配置的最佳方式,可以定义系统级,如开发.测试以及生成阶段.配置参数主要有数据库配置.第三方url等.因此环境变量对于开发和部署应用至关重要. 环境变量和配置文件 shell 编程 ...
- golang 导出变量、函数 首字母必须大写
标识符可被 导出 以允许从另一个包访问. 同时符合以下条件即为已导出标识 1.标识符名的第一个字符为Unicode大写字母(Unicode类别"Lu"): 2.该标识符在包块中已声 ...
- golang中变量使用情况
函数体代码中有未使用的变量,则无法通过编译,即使变量声明后为变量赋值,不过全局变量声明但不使用是可以的 package main//import "fmt"var test1 in ...
最新文章
- 2017-2018-1 20155321 《信息安全系统设计基础》课下作业3
- lenovo L480 进入bios_重装系统重启后不引导,重装系统无法进入引导
- access在sql中横向求和_access在sql中横向求和_求和还用Sum函数就out了,快捷键Alt+=一秒搞定,操作简单更高效......
- 为啥地址线是20根则存储单元个数为2的20
- python爬取12306_python爬取12306的车次信息
- Win10还原被Windows Defender隔离的文件
- 高性能mysql 小查询_高性能MySql进化论(十一):常见查询语句的优化
- bzoj 4010: [HNOI2015]菜肴制作 拓扑排序
- git commit报错(husky > commit-msg hook failed)
- 谷歌验证码 ReCaptcha 破解
- 轻松修复iOS系统的工具:iToolab FixGo mac中文版
- java 判断浏览器_Java怎么判断访问者使用的是360浏览器
- matlab 复杂曲面,基于MATLAB生成的SCR文件实现AutoCAD中复杂曲线曲面的绘制.pdf
- B. Kay and Snowflake(重心的性质)
- 百度热力图颜色说明_揭秘!看完徐州城市人口热力图,你就知道该在哪儿买房了...
- uniapp打开外部链接
- [割点问题]HOJ 12307 Disconnected Pair
- 个人逾期,失信黑名单
- python在哪里学比较好,python从哪里学起
- AutoJs学习-2048全自动