欢迎您的访问
专注架构,Java,数据结构算法,Python技术分享

golang教程(三):变量与数据类型概述

一、变量

变量的介绍

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

变量的使用步骤

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

二、go中变量的使用

1、变量的声明,初始化和赋值

在这里插入图片描述

2、三种使用方式

2.1 指定变量类型,声明后若不赋值,使用默认值

package main

import "fmt"

func main() {
	var num int
	var num1 int = 20
	fmt.Println(num,num1)
}

 

输出:

0 20

 

2.2. 根据值自行判定变量类型(类型推导)
可以省略变量的类型,由编译器在编译时根据所赋的值推导出变量的类型(这个需要赋值才能省略

package main

import "fmt"

func main() {
	//单独定义
	var num int
	var	num1  = 20
	var	num2  = 30
	fmt.Println(num,num1,num2)
}

 

2.3. 省略 var, 注意 :=左侧的变量不应该是已经声明过的,否则会导致编译错误

package main

import "fmt"

func main() {
	//num变量在此之前不能被声明或定义
	num := 10
	fmt.Println(num)
}

 

3、批量定义

在编程中,有时我们需要一次性声明多个变量,Golang 也提供这样的语法
在这里插入图片描述

三、数据类型

在go的数据类型可以分为基本数据类型、复杂数据类型两种;按照值得传递又可以分为值传递和引用传递
在这里插入图片描述
值类型和引用类型的使用特点

  1. 值类型:变量直接存储值,内存通常在栈中分配
    示意图:
    在这里插入图片描述
  2. 引用类型:变量存储的是一个地址,这个地址对应的空间才真正存储数据(值),内存通常在堆
    上分配,当没有任何变量引用这个地址时,该地址对应的数据空间就成为一个垃圾,由 GC 来回收
    示意图:
    在这里插入图片描述
  3. 内存的栈区和堆区示意图
    在这里插入图片描述

作者:iRich_全栈 | 来源:http://39sd.cn/E9F10

赞(0) 打赏
版权归原创作者所有,任何形式转载请联系作者;码农code之路 » golang教程(三):变量与数据类型概述

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏