特殊常量iota:

1.iota的值在遇到const关键字时将被重置为0

2.const中每新增一行常量声明将使iota计数一次,也就是自动加一。

3.iota只能在常量定义中使用。

iota常见使用方法:

1.跳值使用法;

2.插队使用法;

3.表达式隐式使用法;

4.单行使用法;

package main
import (
"fmt"
)
const a = iota
const b = iota
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为0
}
package main

import (
"fmt"
) const a = iota
const (
b = iota
c = iota
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为0
fmt.Println("c的常量值为",c) //值为1
}

所以每新增一行常量声明,这里iota自增一

跳值使用法

以上代码省略....

const (
a = iota
b = iota
_
c = iota
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为1
fmt.Println("c的常量值为",c) //值为3
}

插队使用法

const (
a = iota
b = 3
c = iota
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为3
fmt.Println("c的常量值为",c) //值为2
}

表达式隐式使用法

const (
a = iota * 2
b = iota
c = iota
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为1
fmt.Println("c的常量值为",c) //值为2
}
const (
a = iota * 2
b // 1*2 自动隐士的继承上面非空表达式
c // 2*2
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为2
fmt.Println("c的常量值为",c) //值为4
}
const (
a = iota * 2
b = iota * 3
c
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为3
fmt.Println("c的常量值为",c) //值为6
}

单行使用法

const (
a,b = iota,iota * 2 //同一行iota的值是不加的
c,d //c引用的是a,而不是后面的b iota * 2
e = iota //这行e只有单独一个 因为格式和上面不一样,编辑器会报错,所以要赋值iota
)
func main() {
fmt.Println("a的常量值为",a) //值为0
fmt.Println("b的常量值为",b) //值为0
fmt.Println("c的常量值为",c) //值为1
fmt.Println("d的常量值为",d) //值为2
fmt.Println("e的常量值为",e) //值为2
}

【golang】golang的一些知识要点的更多相关文章

  1. Golang 接口与反射知识要点

    目录 Golang 接口与反射知识要点 1. 接口类型变量 2. 类型断言 3. 鸭子类型 4. 反射机制 5. reflect 包 TypeOf().ValueOf() Type().Kind() ...

  2. 数据结构和算法(Golang实现)(9)基础知识-算法复杂度及渐进符号

    算法复杂度及渐进符号 一.算法复杂度 首先每个程序运行过程中,都要占用一定的计算机资源,比如内存,磁盘等,这些是空间,计算过程中需要判断,循环执行某些逻辑,周而反复,这些是时间. 那么一个算法有多好, ...

  3. 数据结构和算法(Golang实现)(10)基础知识-算法复杂度主方法

    算法复杂度主方法 有时候,我们要评估一个算法的复杂度,但是算法被分散为几个递归的子问题,这样评估起来很难,有一个数学公式可以很快地评估出来. 一.复杂度主方法 主方法,也可以叫主定理.对于那些用分治法 ...

  4. CentOs7下systemd管理知识要点

    centOs7的一个巨大的变动就是用systemd取代了原来的System V init.systemd是一个完整的软件包,安装完成后有很多物理文件组成,大致分布为,配置文件位于/etc/system ...

  5. [CISCO] 转载:冲突域与广播域(区别、知识要点)

    [CISCO] 转载:冲突域与广播域(区别.知识要点) 1.传统以太网操作(Ethernet Connection Ethernet) 传统共享式以太网的典型代表是总线型以太网.在这种类型的以太网中, ...

  6. SDR软件无线电知识要点(三)EVM

    SDR软件无线电知识要点(三)EVM 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) provid ...

  7. SDR软件无线电知识要点(一)噪声系数与噪声因子

    SDR软件无线电知识要点(一)噪声系数与噪声因子 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) ...

  8. RIP 知识要点

    RIP知识要点: UDP:520 版本:v1(广播包更新) / v2(组播更新 224.0.0.9  ) 度量值:跳数(最多跳15跳,路由为16跳时路由不可达) =================== ...

  9. javascript必须知道的知识要点(二)

    该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 内建对象可划分为数据封装类对象.工具类对象.错误类对象 ...

  10. javascript必须知道的知识要点(一)

    该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 语句 注释 输出 字面量 变量 数据类型 typeof ...

随机推荐

  1. httpclient访问接口步骤

    1. 创建HttpClient对象. 2. 构造Http 请求对象. 3. 执行HttpClient对象的execute方法,将Http请求对象作为该方法的参数. 4. 读取execute方法返回的H ...

  2. Java泛型与数组深入研究

    Java中的泛型与数组平时开发用的很多,除了偶尔遇到"NullPointerException"和"IndexOutOfBoundsException"一般也不 ...

  3. 多元线性回归算法python实现(非常经典)

    对于多元线性回归算法,它对于数据集具有较好的可解释性,我们可以对比不过特征参数的输出系数的大小来判断它对数据的影响权重,进而对其中隐含的参数进行扩展和收集,提高整体训练数据的准确性.整体实现代码如下所 ...

  4. thinkphp的增删改查命令 - (mysql-thinkphp) (4)

    方法1,在namespace下面加2行 use think\Controller; use think\Db; 1.查询所有结果 $res = Db::query("select * fro ...

  5. 第一单元总结:基于基础语言、继承和接口的简单OOP

    前情提要 到目前为止,OO课程已经完成了前三次的作业,分别为: 第一次作业:简单多项式的构造和求导.[正则表达式][数据结构][排序] 第二次作业:含三角函数因子的复杂多项式的构造.求导和化简.[递归 ...

  6. NCSC敦促开发者淘汰Python 2

    导读 Python 2.x即将结束生命,英国国家网络安全中心(NCSC)敦促开发人员尽快从Python 2.x迁移到Python 3.x.越快越好.Python 2.x将于2020年1月1日停止使用, ...

  7. 使用Ghidra分析phpStudy后门

    一.工具和平台 主要工具: Kali Linux Ghidra 9.0.4 010Editor 9.0.2 样本环境: Windows7 phpStudy 20180211 二 .分析过程 先在 Wi ...

  8. 图形与动画在Android中的实现

    public class MyView extends View{ Bitmap myBitmap; Paint paint; public MyView(Context context, Attri ...

  9. [Codeforces]1263C Everyone is a Winner!

    题目 On the well-known testing system MathForces, a draw of nnn rating units is arranged. The rating w ...

  10. axios和fetch

    前面的vuex提到了异步请求,在vue里异步请求怎么请求呢,很显然jq.ajax是不用了,不是不能用,而是没必要,jq是操作dom的工具,强行用浪费功能,还会加大打包后的体积,而且是没有promise ...