Go 变量

Go 变量

上一篇:Go 环境搭建
下一篇:Go 常量



前言

变量是计算机语言中能 储存 计算结果或能表示值的抽象概念。不同的变量保存的 数据类型 可能会不一样


提示:以下是本篇文章正文内容,下面案例可供参考

一 声明变量

Go语言中的变量需要 声明后才能使用同一作用域内不支持重复声明。 并且Go语言的变量 声明后必须使用。Go 中声明变量使用 var 关键字

var identifier Type
  • var: 关键字,表示声明变量
  • identifier: 变量名字
  • Type:数据类型,这是一种抽象表示,仅作文档说明,代表任意类型

1.1 名称的命名规则

所谓 名字 就是代表程序中预先分配好的 固定大小的内存区域,在 Go 中可以想象它是一个 盒子,用于存放数据。

名字代表的内存区域的大小由它的 数据类型 确定

变量可以有一个 简短的名称 (如 xy) 或更具描述性的名称 (agepricecarname 等)

名称的命名通常需要更具描述性。Go变量命名规则

  • 名称必须以 字母下划线 (_) 开头。注意, 不能以数字开头
  • 名称只能包含字母 数字 字符和 下划线(a-zA-Z0-9_)
  • 名称是 区分大小写(ageAgeAGE 是三个不同的变量)
  • 名称是 没有长度限制
  • 名称中 不能包含空格
  • 名称 不能是任何 Go关键字

有些 名字被编程语言赋予了特殊的含义,它们作为语言的重要组成部分被称为 关键字保留字。这些名字不能用于变量的命名

Go语言中有 25 25 25 个关键字

break        default      func         interface    select
case         defer        go           map          struct
chan         else         goto         package      switch
const        fallthrough  if           range        type
continue     for          import       return       var

此外,Go 语言中还有 37 个保留字

常量:     true  false  iota  nil
数据类型: int  int8  int16  int32  int64  
         uint  uint8  uint16  uint32  uint64  uintptr
         float32  float64  complex128  complex64
         bool  byte  rune  string  error
内置函数: make  len  cap  new  append  copy  close  delete
         complex  real  imag
         panic  recover

下面列出了一个正确的名字命名

package main

import "fmt"

func main() {
	var name string
	var age int
	var _sys int
}

1.2 多字名称

包含多个单词的变量名可能难以阅读。 你可以使用一些技巧来提高它们的可读性。

驼峰命名法:Go采用的命名规范

除了第一个单词,每个单词都以大写字母开头:

myVariavleName := "John"

帕斯卡命名法

每个单词都以大写字母开头:

MyVariableName := "John"

蛇形命名法

每个单词由一个下划线字符分隔

my_variable_name := "John"

二 批量声明

使用一个 var 关键字,把一些变量写在一个括号()

package main

func main() {
	var (
		name string
		age  int
		ok   bool
	)
}

三 变量的初始化

Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如:

  • 整型和浮点型变量的默认值为 0
  • 字符串变量的默认值为空字符串 ""
  • 布尔型变量默认为 false
  • 切片、函数、指针变量的默认为 nil

初始化 标准语法 如下

var identifier Type - value

变量初始化示例

package main

func main() {
	// 变量的初始化

	var name string = "杜宇鹏"
	var age int = 28

}

3.1 类型推导

如果提供初始值,编译器可以自动从初始值中获取类型信息

package main

func main() {
	var name = "杜宇鹏"
	var age = 28
	var ok = true
}

3.4 初始化多个变量

让编译器进行类型推导,可以一次初始化多个变量

package main

func main() {
	/*多变量初始化*/
	var name, age, ok = "杜宇鹏", 28, true
}

3.3 短变量声明

函数内部,可以使用 := 运算符对变量进行声明和初始化

package main

func main() {
	/*短变量声明*/
	name := "杜宇鹏"
	age := 28
	ok := true
}

使用短变量声明,必须在函数内部。并且必须提供初始值。不提供初始值是不可能进行短变量声明的

四 匿名变量

如果我们需要接收到多个值,有一些值使用不到,可以使用 下划线 _ 表示变量名称,这种变量叫做 匿名变量

package main

import "fmt"

func getNameAndAge() (string, int) {
	return "杜宇鹏", 30
}

func main() {
	/* 使用匿名变量忽略值 */
	name, _ := getNameAndAge()
	fmt.Printf("name: %s\n", name)
}

后续我们无法使用 _ 获取值,它就像黑洞一样,将数据毁灭了


总结

本节介绍如何在 Go 中声明变量、变量的命名规范,及如何初始化变量的值

  • 8
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程进阶之路

感谢打赏, 谢谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值