zoukankan      html  css  js  c++  java
  • go语言变量的零值和nil

    Go语言中无论是全局变量还是局部变量,只要定义了一个变量都有默认的0值
    int/int8/int16/int32/int64/uint/uint8/uint16/uint32/uint64/byte/rune/uintptr的默认值是0
    float32/float64的默认值是0.0
    bool的默认值是false
    string的默认值是""
    pointer/function/interface/slice/channel/map/error的默认值是nil
    其它复合类型array/struct默认值是内部数据类型的默认值
    
    package main
    import "fmt"
    func main() {
    	var intV int // 整型变量
    	var floatV float32 // 实型变量
    	var boolV bool // 布尔型变量
    	var stringV string // 字符串变量
    	var pointerV *int // 指针变量
    	var funcV func(int, int)int // function变量
    	var interfaceV interface{} // 接口变量
    	var sliceV []int // 切片变量
    	var channelV chan int // channel变量
    	var mapV map[string]string // map变量
    	var errorV error // error变量
    
    	fmt.Println("int = ", intV) // 0
    	fmt.Println("float = ", floatV) // 0
    	fmt.Println("bool = ", boolV) // false
    	fmt.Println("string = ", stringV) // ""
    	fmt.Println("pointer = ", pointerV) // nil
    	fmt.Println("func = ", funcV) // nil
    	fmt.Println("interface = ", interfaceV) // nil
    	fmt.Println("slice = ", sliceV) // []
    	fmt.Println("slice = ", sliceV == nil) // true
    	fmt.Println("channel = ", channelV) // nil
    	fmt.Println("map = ", mapV) // map[]
    	fmt.Println("map = ", mapV == nil) // true
    	fmt.Println("error = ", errorV) // nil
    
    	var arraryV [3]int // 数组变量
    	type Person struct{
    		name string
    		age int
    	}
    	var structV Person // 结构体变量
    	fmt.Println("arrary = ", arraryV) // [0, 0, 0]
    	fmt.Println("struct = ", structV) // {"" 0}
    }
    

    -------------------------------------------

    个性签名:代码过万,键盘敲烂!!!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    MTK android flash配置
    MTK平台缩写
    百度员工离职总结:如何做个好员工
    android 分区layout以及虚拟内存布局-小结
    Android eMMC Booting
    Android gingerbread eMMC booting
    Chrome插件开发
    jsonp解决CORS问题
    【好玩】将js代码转为日式表情
    多行文本溢出显示省略号(...)的方法
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/15748047.html
Copyright © 2011-2022 走看看