2. Go变量(Variables)
变量是什么,变量的命名规则,以及一些关于变量的基础没有必要再说了,我想学习Go语言的有很多都是从其他语言转过来的,那我们直接进入正题。
声明一个变量: var age int
给变量赋值: age = 10
声明一个变量并给一个初始值: var age int = 3
Go语言是编译型,强类型语言,声明变量必须指定变量类型,不过为什么设计的这么复杂?直接 int age = 3 不行吗?
不过Go语言提供了一种类型推断,变量有初始值的情况下可以由Go自行判断数据类型,比如: var age = 3
同时定义多个变量: var width, height int = 100, 50
还可以同时定义多个不同类型的变量:
var (
user = "root"
pwd string = "123456"
age int = 3
)
这种定义方式在其他语言里从来没有见到过,在实际使用中会有这种需求吗?【思考】
Go语言声明变量似乎要写很长一大串,var开头....。但是Go也提供了一些其他的方式,简短声明,可以很方便的定义变量。
user := "root"
pwd := "123456"
age := 3
无需写var和变量类型,Go会自行处理,当然不同类型的变量也可以写在同一行: user, pwd, age := "root", "123456", 3
同样的给多个不同类型的变量赋值也可以使用这种方式: user, pwd, age := "root", "123456", 3
Go语言的变量暂时就研究到这里吧,还有一点。Go语言是强类型语言,和Lua PHP 这样的语言不同,一个变量定义完毕后就只能是这个类型,这个也很好理解。
在C语言中 int c = 0; c = "abc"; 这样的肯定会报错了,但是PHP中 $c = 0; $c = "abc"; 完全OK。
2. Go变量(Variables)的更多相关文章
- 变量 Variables
是为了存储(store)程序(program)运算过程中的一些信息(informations),为了方便日后调用.操作和更改 变量名应该简明,见名识意,让读者和我们自己能更清晰的了解 如果我们把变量看 ...
- kettle参数、变量详细讲解[转]
kettle 3.2 以前的版本里只有 variable 和 argument,kettle 3.2 中,又引入了 parameter 概念:variable 即environment variabl ...
- 深入理解PHP原理之变量作用域
26 Aug 08 深入理解PHP原理之变量作用域(Scope in PHP) 作者: Laruence( ) 本文地址: http://www.laruence.com/2008/08/26 ...
- 深入理解PHP原理之变量分离/引用
19 Sep 08 深入理解PHP原理之变量分离/引用(Variables Separation) 作者: Laruence( ) 本文地址: http://www.laruence.com/20 ...
- kettle參数、变量具体解说
kettle參数.变量具体解说 kettle 3.2 曾经的版本号里仅仅有 variable 和 argument,kettle 3.2 中.又引入了 parameter 概念.variable 即e ...
- smarty 从配置文件读取变量
smarty变量分3种: Variables [变量] Variables assigned from PHP [从PHP分配的变量] Variables loaded from config fil ...
- fitnesse - Variables and Symbols
fitnesse - Variables and Symbols 2017-09-30 目录 1 Variables(静态变量) 1.1 定义及使用 1.2 Variable作用域 1.2. ...
- css预编译语言 sass scss(变量$var, css嵌套规则,@import规则,@extend,@mixin)
什么是sass Sass 是对 CSS 的扩展,让 CSS 语言更强大.优雅. 它允许你使用变量.嵌套规则. mixins.导入等众多功能, 并且完全兼容 CSS 语法. Sass 有助于保持大型样式 ...
- SQL Server进阶(十一)可编程对象——变量、 批、流元素、 游标
变量 --------------------------------------------------------------------- -- Variables -------------- ...
随机推荐
- SQLI DUMB SERIES-11
(1)检测构造方式 由此看出输入的用户名以及密码都被一对单引号所包含. 方法一: (2) 模拟真实环境,以用户的身份登录. (3)用burp抓包.开启抓包,输入用户名和密码,会自动跳到这个页面,右键, ...
- laravel 语言插件
aravel 5 语言包,包含 52 种语言, 基于 caouecs/Laravel-lang. trans() 函数根据你的 [本地化文件] 翻译指定的语句 安装 composer require ...
- list基本代码
#include<iostream> #include<list> //STL之list的基本用法 using namespace std; void outputList(l ...
- pass
空语句 do nothing 保证格式完整 保证语义完整 以if语句为例,在c或c++/java中: if(true) ; //do nothing else { //do something } 1 ...
- Scala环境(集成idea)
1 语言介绍 他已经出生15年了,就像明星一样,谁都不可能一开始就人气爆棚粉丝无数,得慢慢混. 据说这家伙已经威胁到了Java的地位,我当时也是被这句话惊到,才毅然决然的认识了他.目前也正在努力学习中 ...
- Linux touch命令详解
Linux touch命令 Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间.若文件不存在,系统会建立一个新的文件. 用法: touch [-acfm][-d<日 ...
- Spark资源配置(核数与内存)
转载自:http://blog.csdn.net/zrc199021/article/details/54020692 关于所在节点核数怎么看? =========================== ...
- signapk
signapk工具可以实现对安卓ROM和安卓应用进行签名.在安卓DIY与安卓ROM制作中作用是非常大的.可以使用其对经过自己DIY修改美化后的应用进行签名或对制作好的安卓ROM卡刷包进行签名.让我们做 ...
- lavarel 中间件
创建中间件 php artisan make:policy UserPolicy 所有生成的授权策略文件都会被放置在 app/Policies 文件夹下. 让我们为默认生成的用户授权策略添加 upda ...
- Android SurfaceView及TextureView对比
SurfaceView是什么? 它继承自类View,因此它本质上是一个View.但与普通View不同的是,它有自己的Surface.有自己的Surface,在WMS中有对应的WindowState,在 ...