zoukankan      html  css  js  c++  java
  • 变量与常量

    标识符于关键字:

      标识符:

        标识符就是具有特殊意义的词,比如变量名、常量名、函数名等等,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语言中的37个保留字

        Constants:    true  false  iota  nil
    
            Types:    int  int8  int16  int32  int64  
                      uint  uint8  uint16  uint32  uint64  uintptr
                      float32  float64  complex128  complex64
                      bool  byte  rune  string  error
    
        Functions:   make  len  cap  new  append  copy  close  delete
                     complex  real  imag
                     panic  recover

    变量的定义:

      变量指定了某个存储单元,该单元会存储特定类型的值。在Go中,有很多种方法用来生命变量

    声明单个变量:

      var name type --> 这个就是声明单个变量的语法格式

      var age int --> 这里面声明了一个int类型,名字为age。我们还没有给该变量赋值,Go会自动的将其初始化,赋值该变量的零值。当你输出的时候就可以看到这个age变成了零

      变量可以赋值为本类型的任何一种值,

    声明变量并初始化

      声明变量的同时可以给定初始值。var name type = value 用于声明变量并初始化

      

    类型判断

      如果变量有初始值,那么Go能够自动推断具有初始值的变量的类型,因此,如果变量要是有初始值的话,那么就可以在变量声明中省略type

      如果变量声明的语法是var name = value 。那么Go就能够自动根据初始值自动推断变量的类型

    声明多个变量

      Go能够通过一条语句来声明多个变量

      var name1, name2 type = value1, value2

      有时候我们如果想在一个语句中声明不同类型的变量  

    var (
        name1 = value,
        name2 = value2           
    )

      

    简短声明
      Go也支持一种声明变量的简介形式,称为简短声明,使用了:=操作符

      name := value

      name, age := '1213William', 18

      简短声明要求:=操作符左边所有变量都有初始值,要是没有设定初始值就会抛出错误。  

      简短声明的语法要求:=操作符的左边至少有一个变量是尚未声明的。

    由于Go是强类型的语,所以不允许某一类型的变量赋值为其他类型的值,也就是类型已经确定就不能改变。

    匿名变量  

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

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

      ps:

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

        2、:=不能使用在函数外面

        3、_多用在占位的时候,表示忽略值

    常量

      常量是恒定不变的,多用于定义程序运行期间不会改变的那些值,常量的声明和变量的声明非常相似,只是把var变成了const,常量字定义的时候是必须要赋值的。

      在常量的声明中,要是同时声明了多个常量的话,如果省略了值表示和上面一行的值相同

    const (
        n1 = 100
        n2
        n3
    )

      这种现象中输入的n1、n2、n3的值都是100

      iota

        iota是Go语言中的常量计数单位,只能在常量的表达式中使用

        iota的const关键字出现的时候将会被重置成0,const中每新增一行常量声明就会使iota计数一次(iota可以理解成const语句快中的行的索引)。使用iota能够简化定义的过程,在定义枚举的时候是非常有用的。

       

  • 相关阅读:
    Java对象序列化/反序列化的注意事项
    初尝Java序列化/反序列化对象
    Java的byte数组
    在C#或者SWT上跨进程访问SWT控件的问题
    Enum实现单例模式
    看个泛型的例子
    构造器优化需要多个构造器的类(建造者模式)
    线程间操作无效: 从不是创建控件的线程访问它.
    SWT中的多线程(Invalid thread access)
    读书笔记 --腾讯传
  • 原文地址:https://www.cnblogs.com/tulintao/p/11793396.html
Copyright © 2011-2022 走看看