变量命名原则

go语言的变量名有字母数字和下划线组成,首字母不能为数字,但是字母不仅仅只限于英文字母,所有的UTF-8字符都是可以的。

变量声明和初始化方式

使用var关键字

var a int =  9
var str string ="jisuanji"

注意,Go语言变量类型放在变量名之后!

如果上面的代码段没有初始化值,那么变量就会被初始化为对应类型的零值。

var a int

这个代码片段声明了一个int类型变量a,并把a初始化为int零值,即0。

忽略类型

这种声明和初始化变量的方式相比于第一种,就是省去了变量的类型,Go语言编译器可以根据你的初始值自动判断出类型。例如:

//这里面的a被自动识别为int类型。
var a = 5

直接初始化

这种方法定义和初始化变量,既不需要var关键字,也不需要指定类型,快捷又方便,实际的代码中建议用这种方式。

a:=3

以上代码段定义了一个变量a,并把它初始化为3。

多变量声明

Go语言可以同时声明和初始化多个变量这个和Python有点像,具体语法如下:

//类型相同多个变量, 非全局变量
var vname1, vname2, vname3 type
vname1, vname2, vname3 = v1, v2, v3
//和python很像,不需要显示声明类型,自动推断
var vname1, vname2, vname3 = v1, v2, v3
//出现在:=左侧的变量不应该是已经被声明过的,且只能在函数体内出现
vname1, vname2, vname3 := v1, v2, v3

代码示例

package main

import "fmt"

var c,d int = 1,2
var e,f = 123,"hello" func main(){
var v21 int32 //被定义初始化为0
var v22 int = 2
var v23 = 3 //被自动识别为int类型
v24 := 4 //简易声明&定义的方式
v21 = int32(v23) //强制转换 g, h := 123, "hello"//注意:下行这种不带声明格式的只能在函数体中出现
fmt.Println("v21 is", v21) //v21被赋新值
fmt.Println("v22 is", v22)
fmt.Println("v23 is", v23)
fmt.Println("v24 is", v24)
fmt.Println(c, d, e, f, g, h)
}

运行结果:

v21 is 3
v22 is 2
v23 is 3
v24 is 4
1 2 123 hello 123 hello

GoLang学习之变量定义和初始化的更多相关文章

  1. matlab学习创建变量定义函数

    定义变量a,b,c,计算输出d >> a=-3;b=2;c=5;>> d=(a^2+b)/c;>> d=(a^2+b)/c d = 2.2000 系统默认变量  a ...

  2. GO学习笔记 - 变量在定义时没有明确的初始化时会赋值为“零值 ”。

    官方教程:https://tour.go-zh.org/basics/12 变量在定义时没有明确的初始化时会赋值为 零值 . 零值是: 数值类型为 0 , 布尔类型为 false , 字符串为 &qu ...

  3. 你好,C++(7)第三部分 C++世界众生相 3.2.1 变量的定义与初始化

    第3部分 C++世界众生相 在听过了HelloWorld.exe的自我介绍,完成了与C++世界的第一次亲密接触后,大家是不是都急不可待地想要一试身手,开始编写C++程序了呢?程序的两大任务是描述数据和 ...

  4. [Golang学习笔记] 04 程序实体1 变量声明

    变量声明: Go语言的程序实体包含:变量.常量.函数.结构体和接口,是一门静态类型的编程语言. (在声明变量或常量的时候,需要指定类型,或者给予足够信息是的Go语言能够推导出类型) Go语言变量的类型 ...

  5. c语言学习笔记-变量、变量的命名、变量的赋值和变量的初始化

    在学习了简单的输入输出功能和了解了一些基本的运算符号之后我们可以试着做一个非常简单的计算器. 比如说想计算23+65 输入以下代码就可以了. printf("23+65=%d",2 ...

  6. go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量

    go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量 下载安装:go get github.com/astaxie/beego 首页 - beego: 简约 & 强大并存 ...

  7. Golang的变量定义及使用案例

    Golang的变量定义及使用案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.变量的定义 package main import "fmt" func m ...

  8. python基础练习题(题目 学习使用auto定义变量的用法)

    day28 --------------------------------------------------------------- 实例042:变量作用域 题目 学习使用auto定义变量的用法 ...

  9. Go变量定义学习

    package main import ( "fmt" ) //变量定义: //使用var关键字或:=定义变量 //可放在函数内,或直接放在包内 //使用var()集中定义 //函 ...

随机推荐

  1. Java学习总结1

    1. 断点调试 a:定位(设置断点)  b:启动调试  c:单步执行  观察变量(F5单步执行   F6单步跳过)d:修改2 static  静态  静态成员,为类的所有对象共享  在静态方法中,只能 ...

  2. flask框架基础

    一 web的一些框架介绍 Flask:短小精悍,内部没有包含多少组件,但是第三方的组件是非常丰富的. Django:django是一个重武器,内部包含了非常多的组件:orm,form,modelFor ...

  3. 修改oralce数据库用户名和密码

    首先以sys用户登录数据库 一.修改用户名 查到到所需修改用户名称的用户需要:select user#,name from user$;(例如查到有一个normal的用户对应的user#=61) 修改 ...

  4. MFC随笔

    设置映射模式  Y轴改为向上 dc.SetMapMode(MM_LOENGLISH);//低精度 dc.SetMapMode(MM_HIENGLISH);//高精度 文本对齐 dc.SetTextAl ...

  5. spring mvc项目中导出excel表格简单实现

    查阅了一些资料,才整理出spring mvc 项目导出excel表格的实现,其实很是简单,小计一下,方便以后查阅,也希望帮助有需要的朋友. 1.导入所需要依赖(Jar包).我使用的是maven,所以坐 ...

  6. Silverlight中关于ComboBox的各种使用

    前端放置了几个ComboBox的控件. <Grid x:Name="LayoutRoot" Background="White"> <Comb ...

  7. 笔记:使用mailto在网页中链接Email地址

    <a>标签还有一个作用是可以链接Email地址,使用mailto能让访问者便捷向网站管理者发送电子邮件.我们还可以利用mailto做许多其它事情.下面一一进行讲解,请看详细图示: 注意:如 ...

  8. weat!!团队

    摘要: 团队名称:weat!! 团队成员:刘波 崔和杰 简介: 刘波:性别男,爱好:动漫,徒步旅行.在组内负责程序编写这一部分. 优点:认真负责,不懂就会去问. 崔和杰:性别男,爱好:篮球.在组内负责 ...

  9. text 文本。

    //支持转义符"\".   <text/> 组件内只支持 <text/> 嵌套. //除了文本节点以外的其他节点都无法长按选中. <view clas ...

  10. DeepFace和GAN

    由于换脸技术的影响,现在造假视频的成本越来越低.AI换脸视频也越来越热门,甚至有一些已经达到了以假乱真的程度.虽然有明星反对表示无奈,可是.... 据报道,2018年,arXiv上发布了902篇GAN ...