7.8 什么叫字面量和组合字面量?

值的字面量是代码中值的文字表示。一个值可能存在多种字面量表示。

举个例子,十进制的数值 15,可以由三种字面量表示

// 16进制
0xF

// 8进制
0o17

// 2进制
0b1111

通过比较,可以看出他们是相等的

import "fmt"

func main() {
    fmt.Println(15 == 0xF)     // true
    fmt.Println(15 == 017)     // true
    fmt.Println(15 == 0b1111)  // true

}

表示基本类型值的文本称为基本字面量,基本字面量也被称为字面量常量或未命名常量。包括:

  • 布尔字面量(非严格意义上的字面量)

  • 整型字面量

  • 浮点数字面量

  • 虚数字面量

  • Rune 字面量

  • 字符串字面量

  • 等等

基本字面量,很好理解,那组合字面量呢?

不就是把多个基本字面量组合在一起的字面量嘛。

比如结构体,切片,数组,字典,他们都可以容纳多个基本字面量。

参考阅读:https://www.jianshu.com/p/0134120abc39