【Go】常见的变量与常量

变量

常见的变量声明方式

一、声明单个变量的多种方式

1.声明一个变量初始化一个值
Go 复制代码
//声明变量 默认值是0,
	var a int
	//初始化一个值
	a = 1
	fmt.Println(a)
2. 在初始化的时候省去数据类型,通过值自动匹配当前的变量的数据类型
Go 复制代码
	var b = 2
	fmt.Println("初始化值:", b)
3.省去var关键字,直接自动匹配,(不能用于全局变量,只能用于函数体内)
Go 复制代码
	c := 3
	fmt.Println("初始化值:", c)

如下,:= 不能声明全局变量

二、声明多个变量的方式

Go 复制代码
//声明多个变量
	var h, i int = 10, 11
	fmt.Printf("h=%d,i=%d\n", h, i)
	//多行的变量声明
	var (
		vv int  = 100
		jj bool = true
	)
	fmt.Println("vv=", vv, "jj=", jj)

总的代码演示如下:

Go 复制代码
package main

import "fmt"

var d int = 4
var e = 5

func main() {
	//变量声明方法

	声明变量 默认值是0,
	var a int
	//初始化一个值
	a = 1
	fmt.Println("a初始化值:", a)
	//
	//初始化的时候省去数据类型,通过自动匹配当前的变量的数据类型
	var b = 2
	fmt.Println("b初始化值:", b)
	//
	//
	c := 3
	fmt.Println("c初始化值:", c)
	//
	//
	打印全局变量
	fmt.Println("全局变量d=", d)
	fmt.Println("全局变量e=", e)

	fmt.Println("===================")
	//声明多个变量
	var h, i int = 10, 11
	fmt.Printf("h=%d,i=%d\n", h, i)
	//多行的变量声明
	var (
		vv int  = 100
		jj bool = true
	)
	fmt.Println("vv=", vv, "jj=", jj)

}

常量

一、const

常量是简单的标识符,在程序运行时,不会被修改的量。

常量中的数据类型只可以是布尔型,数字型,字符串型

常量的定义格式:

复制代码
const identifier  [type] =value

编译器可以根据变量的值来推测类型,可以省略type

显示类型定义:

复制代码
	//显示常量类型
	const a string = "五敷"
	fmt.Print("常量a:", a)

隐式常量类型

复制代码
	//隐式常量类型
	const b = "有你"
	fmt.Println("常量b", b)
复制代码
多个定义常量
复制代码
	const (
		c = 0
		d = 1
		e = 2
	)
	fmt.Printf("c:%d,d:%d,e:%d", c, d, e)

二、iota和表达式

iota可以做更多事情,而不仅仅是 increment。更精确地说,iota总是用于 increment,但是它可以用于表达式,在常量中的存储结果值。

Go 复制代码
	const (
		aa = iota + 1
		bb = iota + 100 //会沿用iota的值
	)
	fmt.Printf("aa=%d,bb=%d", aa, bb)
	//iota总是用于 increment,但是它可以用于表达式
	const (
		express1, express2 = iota + 1, iota + 2
		express3, express4
		express5, express6
	)
	fmt.Println("express1,express2,express3,express4=>", express1, express2, express3, express4, express5, express6)

注意:iota只能在const中使用

相关推荐
GetcharZp6 小时前
玩转 Linux 机器视觉:手把手带你搞定 Ubuntu 下海康工业相机 C++ SDK
后端
星星在线9 小时前
MusicFree:一个「All in One」的个人音乐服务器,让听歌回归简单
前端·后端
IT_陈寒10 小时前
Redis的SETNX并发问题让我加了三天班
前端·人工智能·后端
demo007x10 小时前
Docling 文档转换以及技术架构分析
前端·后端·程序员
袋鱼不重11 小时前
我的神奇同事,AI 用多了居然写了个 Open In Codex
前端·后端·ai编程
用户83562907805111 小时前
使用 Python 操作 Word 内容控件
后端·python
像我这样帅的人丶你还11 小时前
啥? 前端也要会干Java?🛵🛵🛵
后端
Hommy8812 小时前
【剪映小助手】添加贴纸接口(Add Sticker)
后端·github·剪映小助手·视频剪辑自动化·剪映api
LDR00612 小时前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术12 小时前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript