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——常量与运算符相关推荐

  1. golang学习笔记(基础篇)

    LCY~~Golang学习笔记 一.Go语言开发环境 ##安装Go开发包以及VsCode Go开发包与vscode配置安装教程网址:https://www.liwenzhou.com/posts/Go ...

  2. 118云原生编程语言Golang学习笔记

    Golang学习笔记 文章目录 1.Go简介 1.1 简介 1.2 设计初衷 1.3 Golang vs Java 1.4 应用领域 1.5 用go语言的公司 2.Go下载和安装 2.1 开发工具 2 ...

  3. java学习笔记2(datawhale教程):运算符和表达式、流程控制、数组

    java学习笔记2(datawhale教程):运算符和表达式.流程控制.数组 文章目录 java学习笔记2(datawhale教程):运算符和表达式.流程控制.数组 一.运算符和表达式 1.数学函数与 ...

  4. Mysql学习笔记(三)运算符和控制流函数

    原文:Mysql学习笔记(三)运算符和控制流函数 本章学习内容: 1.操作符 2.控制流程函数 操作符: i.圆括号.. 简单的介绍一下圆括号,圆括号的使用的目的是规定计算表达式的顺序...这个想必大 ...

  5. golang学习笔记12 beego table name `xxx` repeat register, must be unique 错误问题

    golang学习笔记12 beego table name `xxx` repeat register, must be unique 错误问题 今天测试了重新建一个项目生成新的表,然后复制到旧的项目 ...

  6. golang学习笔记(五):数组的定义和使用

    golang 学习笔记 数组定义 数组是一系列相同数据类型在内存中有序存储的数据集合 var 数组名 [元素个数]数据类型//定义了10个整型变量的数组元素var arr [10]int//通过下标找 ...

  7. C++学习笔记(九)——运算符重载

    C++学习笔记(九)--运算符重载 C++内部定义的数据类型(int , float, -)的数据操作可以用运算符号来表示,其使用形式是表达式:用户自定义的类型的数据的操作则用函数表示,其使用形式是函 ...

  8. golang学习笔记(十六):多态的实现

    golang 学习笔记 多态实现 package main import "fmt"//先定义接口 在根据接口实现功能 type Humaner1 interface {//方法 ...

  9. golang学习笔记-1

    golang学习笔记-1 自学golang时,找到一篇学习资料http://golang.iswbm.com/en/latest/c01/c01_08.html 初看上面两种写法,不明就里,哪里高级了 ...

最新文章

  1. 软件项目管理0831:不要自我评价过高
  2. 数组转json去除首尾引号_诞生于JavaScript,json的前世今生
  3. jboss eap 7_EAP 7 Alpha和Java EE 7入门
  4. python给多个子图加总标题
  5. 800万,这位两院院士全捐了!
  6. 环形链表||(Leetcode第142题)
  7. CentOS 7添加开机启动服务/脚本
  8. php cache-control,网页缓存控制 Cache-control 常见的取值有private、no-cache、max-age、must-revalidate 介绍...
  9. mongodb插入时,时间差的问题
  10. SQL Server数据类型概述
  11. java spring 数据库_JAVA - SpringBoot项目引用MyBatis操作数据库
  12. 07-0.部署 worker 节点
  13. 党媒发声IT圈里的35岁现象
  14. 阿里巴巴的盈利模式分析
  15. 开通慢直播,RTMP协议和RTSP协议如何选择?
  16. 信工所复试(专业面)
  17. Python中numpy的np.where()函数
  18. 编写一个图片去水印的小工具
  19. 小程序上线发布后,实现版本自动更新,用户无感知
  20. 惠普服务器开机显示系统恢复选项,惠普一键恢复出厂设置【操作办法】

热门文章

  1. 蓝桥杯 ADV-90 算法提高 输出日历
  2. 1055. 集体照 (25)-PAT乙级真题
  3. LeetCode 67. Add Binary
  4. Docker cpu memory quota使用说明
  5. 遍历删除List中的元素,会报错? 用iterator.remove() 完美解决
  6. 昨天1024程序员节,我故意写了个死循环~
  7. 2016 Multi-University Training Contests
  8. Kernel那些事儿之内存管理(8) --- Slab(中)
  9. [译]Perl中的数组
  10. [Linux] BASH程序设计