Go语言变量类型

Go语言变量类型的代码演示

basic_demo.go文件

package main

import (
    "fmt"
)

const (
    I      = 100
    PI     = 3.1415
    PREFIX = "Go_"
)

var (
    i      int
    pi     float32
    prefix string
)

func main() {

    // 分组声明变量和常量
    fmt.Println(i)
    fmt.Println(PREFIX)

    // 一维数组
    a := [3]int{1, 2, 3}
    b := [10]int{1, 2, 3}
    c := [...]int{1, 2, 3}
    fmt.Println(a, b, c)

    // 二维数组
    doubleArray := [2][4]int{[4]int{1, 2, 3, 4}, [4]int{5, 6, 7, 8}}
    fmt.Println(doubleArray)
    easArray := [2][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}}
    fmt.Println(easArray)

    // 动态数组 slice并不是一个真正的动态数组,而是一个引用类型。
    // 和声明array一样,只是少了长度
    // slice := []byte{'a','b','c'}
    // slice可以从一个数组或一个已经存在的slice中再次声明
    var ar = [10]byte{'a', 'b', 'c', 'd', 'e', 'd'}
    var slice1, slice2 []byte
    slice1 = ar[2:5]
    slice2 = ar[6:]
    slice3 := ar[:]
    slice4 := slice3[:4]
    fmt.Printf("%v,%v,%v", slice1, slice2, slice3)
    fmt.Println(slice4)

    // 字典map 格式为map[keyType]valueType
    // 1.直接声明
    // var numbers map[string] int
    // 2.简短的map声明方式
    // numbers := make(map[string]int)
    // numbers["one"] = 1
    // numbers["two"] = 2
    numbers := map[string]int{"one": 1, "two": 2}
    fmt.Println(numbers)
    // 查找有没有对应的key值
    if _, ok := numbers["one"]; ok {
        fmt.Println("有key值为one的键值对!")
    }
    // 删除指定key的value
    delete(numbers, "two")
    fmt.Println(numbers)

    // 变量未填充前的默认值,“零值”
    // int,int8,int32,int64,rune(rune的实际类型是int32),float32,float64 --> 0
    // uint byte(byte的实际类型是uint8) --> 0x0
    // bool --> false
    // string --> ""

}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值