Go基础-变量常量

标准申明

  申明已关键字var 开头 变量类型放在变量的后面 go里面无需分号结尾

var name string
// 批量申明
var (
    s string
    i int
    b bool
)

变量初始化

  函数内部常使用 := 简洁声明

var name string = "张三"
// 类型推导,编辑器会根据值推到类型
var name  = "张三"
// 多个变量赋值
var name, age = "张三", 20

// 在函数内部 简洁申明
func getAge()(int){
      age := 18 // := 可以用在简洁申明
      return age        
}

//匿名变量 _
//匿名变量不占用命名空间,不会分配内存,用_可以表示不需要该方法返回的第X个值

func user() (int, string) {
    return 50, "李四"
}
func main() {
    _, s2 := user() // 这里只返回李四,类似抛弃掉了第一个值
    fmt.Print(s2)
}

常量

  常量在定义的时候必须赋值,常量使用const申明。

//常量声明
const PI = 3.14

//批量申明常量,如果下面没赋值 ,默认获取上面的值
const (
    c1 = 100
    c2    // 100
    c3   //  100
    c4 = 200
    c5   //200
)

//1:iota 在const关键字出现时被重置为0.
//2:const中每新增 [一行] [常量] 将使iota计数一次
//3:可以使用 _ 跳过某些值
//4:如果中间有插队的常量iota一样加一次
const (
    i1 = iota //0
    i2        //1
    i3        //2
    _       //跳过了3
    i5      //4
)

//插队
const (
    a1 = iota //0
    a2 = 100  //100
    a3 = iota  //2 这里注意不是 0 也不是 1 要看 行数
    a4          //3
)

//多个常量声明在一行
const (
    d1, d2 = iota + 1, iota + 2 // d1:1,d2:2
    d3, d4 = iota + 1, iota + 2 // d3:2,d4:3
)

//示例:定义数量级
const (
    _ = iota
    KB = 1 << (10 * iota)
    MB = 1 << (10 * iota)
    GB = 1 << (10 * iota)
    TB = 1 << (10 * iota)
    PB = 1 << (10 * iota)
)

注意事项

  1. 函数外的变量都必须以关键字开始(var、const)
  2. := 不能使用在函数外。
  3. 多用于占位,表示忽略值。
  4. iota 初始为 0,后面每一行+1,中间有插队也+
  5. 标识符如果大写类似于public ,可以暴露出去,对外部可见 例如 var Name
posted @ 2021-11-23 10:36  wish_yang  阅读(25)  评论(0编辑  收藏  举报