zoukankan      html  css  js  c++  java
  • Go内置类型/变量/常量 #1

    【标识符/关键字】

    •go区分大小写。

    ◆go语言中有25个关键字

    break default func interface select
    case defer go map struct
    chan else goto package switch
    const fallthrough if range type
    continue for import return var

     

    ◆go语言有30多个预定义的名字,用于内建的常量、类型和函数

    内建常量:
    true false iota nil
    内建类型:
    int int8 int16 int32 int64
    uint uint8 uint16 uint32 uint64 uintptr
    float32 float64 complex128 complex64
    bool byte rune string error
    内建函数:
    make len cap new append copy close delete
    complex real imag
    panic recover

    ◆fmt包的使用

    1,格式说明

    ◆【变量】

    函数外的每个语句都必须以关键字开始(var、const、func等)。

    1,变量声明

    •格式:var 变量名 变量类型

    ①标准声明

    var v1 string

    var v2 int

    var v3 bool

    ②批量声明

    var (

    v1 string

    v2 int

    v3 bool

    v4 float32

    )

     

    2,变量初始化

    •格式:var 变量名 类型 = 表达式

    var v1 string = "test"

    var v2 int = 10

    var v3 bool =false

    •一次初始化多个变量

    var v4,v5 = "test",20

    •类型推导

    根据等号右边的值来推导变量的类型完成初始化。

    var v1 = "test"

    var v2 = 10

    •短变量声明

    在函数内部,使用简略的 := 方式声明并初始化变量,:=不能使用在函数外。

    package main

    import (

        "fmt"

    )

    var v1 = 100 // 全局变量v1

    func main() {

        v2 := 10

        v1 := 200 // 此处声明局部变量v1

        fmt.Println(v1, v2)

    }

    •匿名变量

    多重赋值时,如果想要忽略某个值,可以使用匿名变量。 匿名变量用一个下划线_表示。

    匿名变量不占用命名空间,不会分配内存,匿名变量之间不存在重复声明。

     

    3,类型别名

    type myint int #定义myint为int的别名;

    var i myint = 10

     

    ◆【常量】

    常量和变量声明类似,只是把var换成了const,常量在定义的时候必须赋值。常量声明后,在整个运行期间值不能改变。

    const pi = 3.1415

    •多个常量一起声明:

    const {

        pi =3.1415

    c1 = 1024

    }

    •const同时声明多个常量时,如果省略了值则表示和上一行的值相同。

    const (

    v1 = 100

    v2 //也为100

    v3 //也为100

    )

     

    ◆【iota】

    iota是go语言的常量计数器,只能在常量表达式中使用。

    iota在const关键字出现时将被重置为0。const中每新增一行常量声明, iota计数一次。

    const (

            v1 = iota //0

            v2 //1

            v3 //2

            v4 //3

    )

    •使用_跳过某些值

    const (

        v1 = iota //0

        v2 //1

        _

        v4 //3

    )

    •iota声明中间插值

    const (

        v1 = iota //0

        v2 = 100 //100

        v3 = iota //2

        v4 //3

    )

    const v5 = iota //0

    ◆【运算符】

    ++与--在go语言中是单独的语句,不是运算符。

    【帮助文档】

    •中文在线文档:https://studygolang.com/pkgdoc

    •官网:https://golang.google.cn/

    •代码自动格式化:go fmt main.go

    参考:https://www.liwenzhou.com/categories/Golang/

  • 相关阅读:
    POI实现Excel导入导出
    2017春季_京东_Java后端研发岗面经
    java中的IO流和多线程
    Java静态代理&动态代理&Cglib代理详解
    Java8新特性——stream流
    Java8新特性——接口默认方法
    Java8新特性——lambda函数式编程
    难题解决:Mycat数据库中间件+Mybatis批量插入数据并返回行记录的所有主键ID
    物料导出FreeMaker模板定义
    Mysql的MyISAM和InnoDB存储引擎的区别
  • 原文地址:https://www.cnblogs.com/mountain2011/p/12494787.html
Copyright © 2011-2022 走看看