Go语言变量类型

wuya814070935 · · 1246 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

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 --> ""

}

有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:wuya814070935

查看原文:Go语言变量类型

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1246 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传