zoukankan      html  css  js  c++  java
  • Go史诗级选手之变量与常量

    变量

    一.声明变量

    /* 
    1.标准格式 
    	var 变量名 变量类型
    2.批量格式
    	var(
    		a int  			
    		b string
    		c []float32		声明一个32位浮点切片类型的变量,浮点切片标识由多个浮点类型组成的数据结构。
    		d func() bool	声明一个返回值为布尔类型的函数变量,这种形式一般用于回调函数,即将函数以变量的形式保存下来,在需要的时候重新调用这个函数
            e struct{		声明一个结构体类型的变量,这个结构体拥有一个整型的X字段
            	x int
            }
    	)
    */
    

    二.初始化变量

    /*
    ps: Go语言在声明变量时,每个变量会初始化其类型的默认值 (未赋值的情况下)
    	数字类型默认值为 0 
    	字符创类型默认值为 空字符串
    	布尔类型默认值为 bool
    	切片、函数、指针变量的默认值为 nil
    */
    /*
    1.标准格式
    	var 变量名 类型 = 表达式
    	
    2.编译器推导类型的格式
    	在标准格式的基础上,省略数据类型的定义,编译器会尝试根据等号右边的表达式推导该变量的类.型
    	ps:等号右边的部分在编译原理里被称作“右值”
    
    3.短变量声明并初始化
    	变量名 := 值
    	ps:推导声明的左值变量必须是没有被定义过的变量 若定义过则会发生编译错误
    */
    

    三.多个变量同时赋值

    /*
    1.交叉赋值
    	x = 1 y = 2 ===> x, y = y, x
    2.匿名变量8~
    	ps: _ 表示一个不接收值得变量
    */
    

    常量

    /*
    恒定不变的量 且在定义时必须赋值
    const 定义常量的关键字
    
    枚举 iota 模拟
    iota 的起始值为 0
    一个const声明内的每一行常量,将会自动套用前面的iota格式,并自动增加
    
    用途 枚举常量生成器 如:生成标志位常量
    
    
  • 相关阅读:
    Redis 是单进程单线程的?
    LeetCode-114. Flatten Binary Tree to Linked List
    Java HashMap源码分析
    转:zookeeper中Watcher和Notifications
    分布式服务框架
    LeetCode-330.Patching Array
    转:String StringBuffer StringBuilder区别
    最小堆代码实现
    数组的各类排序
    两步建立 ssh 反向隧道
  • 原文地址:https://www.cnblogs.com/Ethan99/p/10956278.html
Copyright © 2011-2022 走看看