【golang】golang的一些知识要点
特殊常量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的一些知识要点的更多相关文章
- Golang 接口与反射知识要点
目录 Golang 接口与反射知识要点 1. 接口类型变量 2. 类型断言 3. 鸭子类型 4. 反射机制 5. reflect 包 TypeOf().ValueOf() Type().Kind() ...
- 数据结构和算法(Golang实现)(9)基础知识-算法复杂度及渐进符号
算法复杂度及渐进符号 一.算法复杂度 首先每个程序运行过程中,都要占用一定的计算机资源,比如内存,磁盘等,这些是空间,计算过程中需要判断,循环执行某些逻辑,周而反复,这些是时间. 那么一个算法有多好, ...
- 数据结构和算法(Golang实现)(10)基础知识-算法复杂度主方法
算法复杂度主方法 有时候,我们要评估一个算法的复杂度,但是算法被分散为几个递归的子问题,这样评估起来很难,有一个数学公式可以很快地评估出来. 一.复杂度主方法 主方法,也可以叫主定理.对于那些用分治法 ...
- CentOs7下systemd管理知识要点
centOs7的一个巨大的变动就是用systemd取代了原来的System V init.systemd是一个完整的软件包,安装完成后有很多物理文件组成,大致分布为,配置文件位于/etc/system ...
- [CISCO] 转载:冲突域与广播域(区别、知识要点)
[CISCO] 转载:冲突域与广播域(区别.知识要点) 1.传统以太网操作(Ethernet Connection Ethernet) 传统共享式以太网的典型代表是总线型以太网.在这种类型的以太网中, ...
- SDR软件无线电知识要点(三)EVM
SDR软件无线电知识要点(三)EVM 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) provid ...
- SDR软件无线电知识要点(一)噪声系数与噪声因子
SDR软件无线电知识要点(一)噪声系数与噪声因子 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) ...
- RIP 知识要点
RIP知识要点: UDP:520 版本:v1(广播包更新) / v2(组播更新 224.0.0.9 ) 度量值:跳数(最多跳15跳,路由为16跳时路由不可达) =================== ...
- javascript必须知道的知识要点(二)
该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 内建对象可划分为数据封装类对象.工具类对象.错误类对象 ...
- javascript必须知道的知识要点(一)
该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 语句 注释 输出 字面量 变量 数据类型 typeof ...
随机推荐
- Linux centosVMware df命令、du命令、磁盘分区
一.df命令 df(disk filesystem的简写)用于查看自己挂载磁盘的总容量.使用容量.剩余容量,可以不加任何参数,默认以KB为单位. [root@davery ~]# df文件系统 1K- ...
- Maven项目- get请求的乱码问题,使用tamcat7出现乱码的解决方法
get请求的乱码问题: 解决方法: 手动处理编码
- Day9 - A - Apple Catching POJ - 2385
Description 有两棵APP树,编号为1,2.每一秒,这两棵APP树中的其中一棵会掉一个APP.每一秒,你可以选择在当前APP树下接APP,或者迅速移动到另外一棵APP树下接APP(移动时间可 ...
- 099、Java中String类之字符数组与字符串的转换
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- 1-7SpringBoot之表单验证@Valid
SpringBoot提供了强大的表单验证功能实现,给我们省去了写验证的麻烦: 这里我们给下实例,提交一个有姓名和年龄的表单添加功能, 要求姓名不能为空,年龄必须是不小于18 : 我们先新建一个Stud ...
- mybatis insert后返回主键ID
需求: mybatis 在添加记录时需要获取到记录主键id id=0 无法获取主键id的值 在插入方法中添加如下属性和相应的值 <insert useGeneratedKeys="t ...
- Ubuntu 移植 ffmpeg + x264
背景 直接编译移植的ffmpeg是与 arm-linux 下类似的. 详情参考: arm linux 移植 FFMPEG库 + x264 host平台 :Ubuntu 16.04 x264 :2017 ...
- C++字符集和词法记号以及符号常量
C++字符集 大小写的英文字母:A~Z,a~z 数字符号:0~9 特殊字符:!#%*()等 关键字:C++预定义的单词 标识符:程序员声明的单词,它命名程序正文中的一些实体 文字:在程序中直接使用符号 ...
- KMP【模板】 && 洛谷 P3375
题目传送门 解题思路: 首先说KMP的作用:对于两个字符串A,B(A.size() > B.size()),求B是否是A的一个字串或B在A里的位置或A里有几个B,说白了就是字符串匹配. 下面创设 ...
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'解决
用XAMPP装装好mysql之后,mysql -uroot 连不上,报这个错误: ERROR 2002 (HY000): Can't connect to local MySQL server t ...