Golang学习笔记3——常量与运算符
1.常量的定义
常量的值在编译时就已经确认
常量的定义格式与变量基本相同
等号右侧必须是常量或者常量表达式
常量表达式中的函数必须是内置函数
//定义单个常量
const a int = 1
const b = "A"
const (text = "123"length = len(text)num = b * 20
)
//同时定义多个变量
const i, j, k = 1, "2", "3"
const (text2 ,length2, num2 = "456", len(text2), k* 10
)
2.常量的初始化规则
- 在定义常量组时,如果不提供初始值,则表示使用上行的表达式
var a = 1const (b = a//此时报错,因为全局变量在编译时不能确定值,常量必须是编译时能确定值的或使用内置函数获得的值(eg:len()))const (a = "A"bc//此时 a,b,c都为"A")const (a, b = 1, "A"c, d//a,c为1,b,d为"A"。此时注意下行的常量个数必须与上行数量保持一致)
3.常量的枚举
使用相同的表达式不代表具有相同的值
iota是常量的计数器,从0开始,组中每定义1个常量自动递增1
通过初始化规则与iota可以达到枚举的效果
每遇到一个const关键字,iota就会重置为0
const (a = "A"bc = iotad //d的值为3,因为在常量组中,定义了4个变量所以iota计数器从0开始计数4次,所以为3
)
4.运算符
//优先级从高到低 * / % << >> & &^= - | ^ == != < <= >= >&&||
例子:
/*6的二进制:0110 第一个
10的二进制:1011 第二个
---------
& 0010 = 2 (两个都是1才为1)
| 1111 = 15 (一个是1就是1)
^ 1101 = 13 (两个只有一个是1才是1)
$^ 0100 = 4 (第二个为1则是0,否则与第一位相同)
*/
转载于:https://www.cnblogs.com/marks-gui/p/7709954.html
Golang学习笔记3——常量与运算符相关推荐
- golang学习笔记(基础篇)
LCY~~Golang学习笔记 一.Go语言开发环境 ##安装Go开发包以及VsCode Go开发包与vscode配置安装教程网址:https://www.liwenzhou.com/posts/Go ...
- 118云原生编程语言Golang学习笔记
Golang学习笔记 文章目录 1.Go简介 1.1 简介 1.2 设计初衷 1.3 Golang vs Java 1.4 应用领域 1.5 用go语言的公司 2.Go下载和安装 2.1 开发工具 2 ...
- java学习笔记2(datawhale教程):运算符和表达式、流程控制、数组
java学习笔记2(datawhale教程):运算符和表达式.流程控制.数组 文章目录 java学习笔记2(datawhale教程):运算符和表达式.流程控制.数组 一.运算符和表达式 1.数学函数与 ...
- Mysql学习笔记(三)运算符和控制流函数
原文:Mysql学习笔记(三)运算符和控制流函数 本章学习内容: 1.操作符 2.控制流程函数 操作符: i.圆括号.. 简单的介绍一下圆括号,圆括号的使用的目的是规定计算表达式的顺序...这个想必大 ...
- golang学习笔记12 beego table name `xxx` repeat register, must be unique 错误问题
golang学习笔记12 beego table name `xxx` repeat register, must be unique 错误问题 今天测试了重新建一个项目生成新的表,然后复制到旧的项目 ...
- golang学习笔记(五):数组的定义和使用
golang 学习笔记 数组定义 数组是一系列相同数据类型在内存中有序存储的数据集合 var 数组名 [元素个数]数据类型//定义了10个整型变量的数组元素var arr [10]int//通过下标找 ...
- C++学习笔记(九)——运算符重载
C++学习笔记(九)--运算符重载 C++内部定义的数据类型(int , float, -)的数据操作可以用运算符号来表示,其使用形式是表达式:用户自定义的类型的数据的操作则用函数表示,其使用形式是函 ...
- golang学习笔记(十六):多态的实现
golang 学习笔记 多态实现 package main import "fmt"//先定义接口 在根据接口实现功能 type Humaner1 interface {//方法 ...
- golang学习笔记-1
golang学习笔记-1 自学golang时,找到一篇学习资料http://golang.iswbm.com/en/latest/c01/c01_08.html 初看上面两种写法,不明就里,哪里高级了 ...
最新文章
- 软件项目管理0831:不要自我评价过高
- 数组转json去除首尾引号_诞生于JavaScript,json的前世今生
- jboss eap 7_EAP 7 Alpha和Java EE 7入门
- python给多个子图加总标题
- 800万,这位两院院士全捐了!
- 环形链表||(Leetcode第142题)
- CentOS 7添加开机启动服务/脚本
- php cache-control,网页缓存控制 Cache-control 常见的取值有private、no-cache、max-age、must-revalidate 介绍...
- mongodb插入时,时间差的问题
- SQL Server数据类型概述
- java spring 数据库_JAVA - SpringBoot项目引用MyBatis操作数据库
- 07-0.部署 worker 节点
- 党媒发声IT圈里的35岁现象
- 阿里巴巴的盈利模式分析
- 开通慢直播,RTMP协议和RTSP协议如何选择?
- 信工所复试(专业面)
- Python中numpy的np.where()函数
- 编写一个图片去水印的小工具
- 小程序上线发布后,实现版本自动更新,用户无感知
- 惠普服务器开机显示系统恢复选项,惠普一键恢复出厂设置【操作办法】
热门文章
- 蓝桥杯 ADV-90 算法提高 输出日历
- 1055. 集体照 (25)-PAT乙级真题
- LeetCode 67. Add Binary
- Docker cpu memory quota使用说明
- 遍历删除List中的元素,会报错? 用iterator.remove() 完美解决
- 昨天1024程序员节,我故意写了个死循环~
- 2016 Multi-University Training Contests
- Kernel那些事儿之内存管理(8) --- Slab(中)
- [译]Perl中的数组
- [Linux] BASH程序设计