zoukankan      html  css  js  c++  java
  • Go 变量及基本数据类型1

    #### Go 变量及基本数据类型(一)
    今天主要学习一下Go 中的变量及基本数据类型: 如何申明,使用变量,以及基本数据类型的介绍和使用细节;
    ##### 变量的介绍
    1. 变量相当于内存中一个数据存储空间的表示, 也可以把变量看做是一个房间的门牌号, 通过门牌号可以找到房间, 同理通过变量名可以访问到变量的值;
    ##### 变量的使用步骤
    1. 声明变量
    2. 非变量赋值
    3. 使用变量
    案例:

    package main 
    import "fmt" 
    func main(){
        // 定义变量, 也叫声明变量
        var i int 
        // 给变量赋值
        i = 10 
        // 使用变量
        fmt.Println("i=",i)
    }
    

    ##### 变量使用注意事项
    1. 变量表示内存中的一个存储区域
    2. 该区域有自己的名称(变量名)和类型(数据类型)
    示意图:

    3. Go 变量使用的三种方式
    3.1 指定变量类型, ***声明后若不赋值,使用默认值***;

    package main
    func main(){
        // 声明后若不赋值, 使用默认值
        // int 类型的默认值是0
        var i int 
        fmt.Println("i=",i)
    }
    

      

    3.2 根据值自动判断变量的类型(称为类型推导)

    // 根据值自动判断变量的类型
    var i = 11
    fmt.Println("i=",i)
    

      

    3.3 省略var , := 左侧的变量不应该是声明过的,而且此种方式,只能使用于函数内;

    func test(){
    // 省略var , := 左侧的变量不能是已经声明过的,否则编译失败
    name := "Tom"
    fmt.Println("name=",name)
    }
    

      

    3.4 多变量声明

    package main
    import "fmt"
    func main(){
        // 声明多个变量
        var a1,a2,a3 int 
        // 为多个变量赋值
        a1,a2,a3 = 1,2,3
        fmt.Println(a1,a2,a3)
    
        // 声明多个变量并赋值
        var a4,a5,a6 = 4,"5",6.6
        fmt.Println(a4,a5,a6) 
    
        // 类型推导方式 
        a7,a8,a9 := 5,"6",7.7
        fmt.Println(a7,a8,a9)
    }
    

      

    3.5 全局变量的定义(在函数外部定义的变量为全局变量)***全局变量不可以使用:= 方式声明***

    // 定义全局变量
    package main
    import "fmt"
    var n1 = 1
    var n2 = 2 
    // 也可以一次性声明
    var (
    n3 = 3 
    n4 = 4 
    )
    func main(){
        fmt.Println(n1,n2,n3,n4)
    }
    

     3.6 变量在同一个作用域(在同一个函数或者同一个代码块)不能重名 

    func test(){
        var i = 10
        i := 11 // 错误, 同一个作用域不能重名)
    }
    

      

    3.7 变量如何没有赋值,编译器会使用默认值, int 默认值0, string 默认值为"", 小数类型默认0, bool 类型为false;
    ##### 程序中 "+" 号的使用
    1. 当左右两边都是数值类型时, 做加法运算;
    2. 当左右两边都是字符串时, 做字符串拼接;

    package main
    import "fmt"
    func main(){
        var a1 = 1 
        var a2 = 2 
        var s1 = "hello "
        var s2 = "world"
        fmt.Println(a1+a2) // 加法运算
        fmt.Println(s1+s2) // 拼接
    }

    ##### 基本数据类型的介绍
    每一个数据都定义了明确的数据类型, 在内存中分配不同大小的内存空间
    1. 基本数据类型
    1.1 整数类型(int,int8,int16,int32,int64,uint,uint8,uint16,uint32,uint64)
    1.2 浮点类型(float32,float64)
    1.3 字符型(使用byte 保存单个字母字符)
    1.4 布尔型(bool)
    1.5 字符串(string)
    2. 复杂数据类型
    2.1 指针(Pointer)
    2.2 数组(array)
    2.3 结构体(struct)
    2.4 管道(channel)
    2.5 函数(func)
    2.6 切片(slice)
    2.7 接口(interface)
    2.8 map

  • 相关阅读:
    产品逻辑中的—B端技术常识:同步异步接口模式
    高德地图0907
    高德地图出异常
    svn提交报错
    高德地图demo
    JS中一些特殊的方法
    video标签的学习
    document.getElementById('file').files[0]的jquery写法
    layer请求设置遮罩
    easypoi入门<1
  • 原文地址:https://www.cnblogs.com/Mail-maomao/p/11341781.html
Copyright © 2011-2022 走看看