博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
入坑Golang——变量
阅读量:3947 次
发布时间:2019-05-24

本文共 1918 字,大约阅读时间需要 6 分钟。

一花一世界,一个程序也是一个世界 —— Go 变量
  • 变量概念

    变量相当于内存中一个数据存储空间的表示,你可以把变量看做是一个房间的门牌号,通过门牌号我们可以找房间,同样的道理,通过变量名可以访问到变量(值)

  • 变量的使用步骤

    1、声明变量(也叫:定义变量)
    2、非变量赋值
    3、使用变量

  • 变量快速入门

  • 案例

packge mainimport "fmt"func main() {
// 定义变量/声明变量 var i int // 给i 赋值 i = 10 // 使用变量 fmt.Println("i=", i)}

执行结果(输出的逗号","作为分隔符,不会被打印出来)

D:\go\liteide\golang\main>go run 3变量.goi= 0
Golang变量使用的三种方式
  • 1、第一种:指定变量类型,声明后若不赋值,使用默认值
func main() {
// golang的变量使用方式1 // 第一种:指定变量类型,声明后若不赋值,使用默认值 // int 的默认值是0 ,其它数据类型的默认值后面马上介绍 var i int fmt.Println("i=", i)}

执行结果(当一个变量被定义为 int 类型之后,如果没有赋值新的整数给变量,那么默认的变量值为"0")

D:\go\liteide\golang\main>go run 3变量.goi= 0
  • 2、第二种:根据值自行判断变量类型(类型推导)
func main() {
// 第二种:根据值自行判断变量类型(类型推导) var num = 10.11 fmt.Println("num=", num) // fmt.Println(typeof(num))}
  • 3、第三种:省略var,注意 := 左侧的变量不应该是已经声明过的,否则会导致编译错误
func main() {
// 下面的方式等价 var name string name = "tom" // := 的 :不能省略,否则错误 var name := "tom" fmt.Println("name=", name)}
  • 4、多变量声明
    在编程中,有时我们需要一次性声明多个变量,Golang也提供这样的域伐
    举例说明:
    如果是一个新的go文件需要packge 声明 main 方法包;导入打印模块 “fmt”
func main() {
// 该案例演示golang如何一次性声明多个变量 // var n1, n2, n3 int // fmt.Println("n1=",n1, "n2=",n2, "n3=",n3) // 一次性声明多个变得方式2 // var n1, name , n3 = 100, "tom", 888 // fmt.Println("n1=",n1, "name=", name, "n3=", n3) // 一次性声明多个变量的方式3,同样可以使用类型推导 n1, name, n3 := 100, "tom~", 888 fmt.Println("n1=", n1, "name=", name, "n3=", n3)}
  • 如何一次性声明多个全局变量【在go中函数外部定义变量就是全局变量】:
// 定义局部变量var n1 = 100var n2 = 200var name = "jack"// 上面的声明方式,也可以改成一次性声明var (	n3 = 300	n4 = 900	name2 = "mary")
* 变量的声明,初始化和赋值

声明变量

基本语法: var 变量名 数据类型
var a int 这就是声明了一个变量名,变量名是"a"
var num float32 这也是声明了一个变量,表示一个单精度类型的小数,变量名为"num"

初始化变量

在声明变量的时候,就给值。
var a int = 10 这就是初始化变量"a"
使用细节:如果声明时就直接赋值,可省略数据类型
var b = 400

给变量赋值

比如你先声明了变量:var num int //默认"0"
然后,再给值 num = 780;这就是给变量赋值。


  • 画外音
  • 获取数据类型的方法
func main() {
var num = 10.11 // fmt.Println("num=", num) fmt.Println(typeof(num))}func typeof(num interface{
}) string {
return fmt.Sprintf("%T", num)}

转载地址:http://xhqwi.baihongyu.com/

你可能感兴趣的文章
代码自动生成-宏带来的奇技淫巧
查看>>
VC com开发中实现IObjectSafety
查看>>
c# 正则表达式基础
查看>>
C#3.0语言新特性
查看>>
W32Dasm反汇编工具使用教程
查看>>
EXE破解工具介绍
查看>>
机械码对应值
查看>>
常用语音编码的WAVE文件头格式剖析--各种编码
查看>>
在VC6集成环境中开发设备驱动程序的方法
查看>>
如何进行软件需求分析
查看>>
有关数据挖掘的10个常见问题
查看>>
电信数据挖掘
查看>>
电信数据挖掘之流失管理
查看>>
电信运营商如何进行客户细分
查看>>
c++名库介绍
查看>>
boost1.43在win7下的编译
查看>>
VC++工程如何脱离VSS环境
查看>>
转 hook 自绘原理
查看>>
NSIS 脚本介绍
查看>>
记录通讯日志的函数
查看>>