当前位置 博文首页 > 手把手带你走进Go语言之常量解析

    手把手带你走进Go语言之常量解析

    作者:我是小白呀 时间:2021-09-13 17:59

    目录
    • 概述
    • 常量
    • 常量计算
    • iota

    概述

    Golang 是一个跨平台的新生编程语言. 今天小白就带大家一起携手走进 Golang 的世界. (第 3 课)

    在这里插入图片描述

    常量

    常量 (Constant) 是指程序在执行过程中不会改变的固定值. 常量可以是任何基本数据类型. 如整数常量, 浮点常量, 字符常量, 枚举常量. 常量一般都会被编译器视为常规变量, 只是常量的值不能再定义之后修改.

    在这里插入图片描述

    格式 1:

    const 变量名 = 值
    

    格式 2:

    const 变量名 变量类型
    

    例子:

    package main
    
    import "fmt"
    
    func main() {
    	
    	// 方法一
    	const num1 = 1
    
    	// 方法二
    	const num2 int = 2
    
    	// 调试输出
    	fmt.Println(num1, num2)
    }
    

    输出结果:

    1 2

    例 2:

    package main
    
    import "fmt"
    
    func main() {
    
    	// 字符串常量
    	const str1 = "我是小白呀"
    
    	// 整数常量
    	const int1 = 1
    
    	// 浮点常量
    	const float1 = 1.2
    
    	// 布尔类型常量
    	const boolean1 = true
    
    	// 调试输出
    	fmt.Println(str1)
    	fmt.Println(int1)
    	fmt.Println(float1)
    	fmt.Println(boolean1)
    }
    

    输出结果:

    我是小白呀
    1
    1.2
    true

    常量计算

    常量可以使用len(), cap(), unsafe.Sizeof()函数计算表达式的值. 常量表达式中函数必须是内置函数, 否则编译不过.

    例子:

    package main
    
    import "fmt"
    import "unsafe"
    
    // 定义常量
    const (
    	str = "iamlittlewhite"
    	num = 1
    )
    
    func main() {
    
    	// 计算字符串长度
    	fmt.Println(len(str))
    
    	// 计算整数占用字节
    	fmt.Println(unsafe.Sizeof(num))
    }
    

    输出结果:

    14
    8

    iota

    iota 是 Go 语言的常量计数器, 只能在常量的表达式中使用. iota 在 const 关键字出现时将被重置为 0, const 中每新增一行常量, iota 就会计数一次. iota 可以帮助我们统计常量同一行代码被访问了多少次.

    在这里插入图片描述

    例子:

    package main
    
    import "fmt"
    
    func main() {
    
    	// 定义iota
    	const (
    		a = iota
    		b = iota
    		c = iota
    		d = iota
    	)
    
    	// 调试输出
    	fmt.Println(a, b, c, d)
    	fmt.Println(a, d)
    }
    

    输出结果:

    0 1 2 3
    0 3

    jsjbwy
    下一篇:没有了