运算符

1、基本介绍

用以表示数据的运算、赋值和比较等

1.1、分类

  • 算术运算符
  • 赋值运算符
  • 比较运算符/关系运算符
  • 逻辑运算符
  • 位运算符
  • 其它运算符

2、算术运算符

算术运算符是对数值类型的变量进行运算的,比如:加减乘除。

2.1、一览表

2.2、注意事项

  1. 对于除号"/",它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分

  2. 当对一个数取模时,可以等价a%b=a-a/b*b

  3. Golang的自增自减只能当做一个独立语言使用,不能这样使用

a = i++
a = i--
++i
--i
if i++ > 0 { }
  1. Golang的++和--只能写在变量的后面,不能写在变量的前面

3、关系运算符(比较运算符)

3.1、基本介绍

关系运算符的结果都是bool型,也就是要么是true,要么是false

3.2、一览表

3.3、细节

  1. 关系运算符组成的表达式,我们称为关系表达式:a>b

  2. 比较运算符"=="不能误写成"="

4、逻辑运算符

4.1、介绍

用于连接多个条件(一般来讲就是关系表达式),最终的结果也是一个bool值

4.2、说明

4.3、细节

  1. &&也叫短路与:如果第一个条件为false,则第二个条件不会判断,最终结果为false

  2. ||也叫短路或:如果第一个条件为true,则第二个条件不会判断,最终结果为true

5、赋值运算符

5.1、介绍

赋值运算符就是将某个运算后的值,赋给指定的变量

5.2、分类

5.3、特点

1)运算顺序从右往左

var c int
c = a + 3 // 赋值运算符的执行属性是从右到左

2)赋值运算符的左边只能是变量,右边可以是变量、表达式、常量值

3)复合赋值运算符等价于下面的效果

c += 1
c = c + 1

6、位运算符

7、其它运算符

8、特别说明

9、运算符优先级

10、键盘输入语句

在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取

func main() {

	var name string
var age byte
var sal float64
var isPass bool fmt.Println("请输入姓名")
fmt.Scanln(&name) fmt.Println("请输入年龄")
fmt.Scanln(&age) fmt.Println("请输入收入")
fmt.Scanln(&sal) fmt.Println("请输入是否通过考试")
fmt.Scanln(&isPass) fmt.Println("%v %v %v %v", name, age, sal, isPass)\ // 使用 fmt.Scanf() 获取指定格式输入 (格式化)
fmt.Scanf("%s %d %f %t", &name, &age, &sal, &isPass) }

11、进制

1)二进制:0,1,满2进1。在golang中,不能直接使用二进制来表示一个整数,它沿用了c的特点。

2)十进制:0-9,满10进1。

3)八进制:0-7,满8进1.以数字0开头表示。

4)十六进制:0-9及A-F,满16进1.以0x或0X开头表示。此处的A-F不区分大小写。

func main(){

    i := 5
// 二进制
fmt.Print("%b", i) // 八进制
j : = 011
fmt.Print("j=", j) // 十六进制
k := 0xab
fmt.Print("k=", k) }

GoLang 的变量的更多相关文章

  1. linux上java和golang环境变量的设置

    JAVA环境变量   (1).打开~/.bashrc完成环境配置( 作用类似于/etc/bashrc, 只是针对用户自己而言,不对其他用户生效.)       文件追加            expo ...

  2. Golang的变量定义及使用案例

    Golang的变量定义及使用案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.变量的定义 package main import "fmt" func m ...

  3. Golang之变量去哪儿

    目录 什么是逃逸分析 为什么要逃逸分析 逃逸分析是怎么完成的 逃逸分析实例 总结 参考资料 写过C/C++的同学都知道,调用著名的malloc和new函数可以在堆上分配一块内存,这块内存的使用和销毁的 ...

  4. [golang note] 变量常量

    变量 • 变量声明 √ golang变量声明的关键字为var. √ golang变量声明时类型信息放置在变量名之后. ▶ 单个变量声明 ▪ 语法如下 var name type ▪ 示例如下 var ...

  5. golang获取变量数据类型

    如果某个函数的入参是interface{},有下面几种方式可以获取入参的方法: 1 fmt: import "fmt" func main() { v := "hello ...

  6. 将golang中变量重置为零的reflect方法

    下面给出简单的代码,这里通过将变量重置为零来实现过滤字段的目的: type student struct { Age int `json:"age,omitempty"` Name ...

  7. 第 五 课 golang语言变量

    1 变量三种声明: (第一种的var和类型都是多余: 第二种最简洁,但是第二种只能用在函数中,不能是全局变量的声明)        第一种: var v_name v_type(注意顺序) v_nam ...

  8. Golang 环境变量及工作区概念

    GOROOT go的安装路径 GOPATH 可以有多个目录,每个目录就是一个工作区,放置源码文件,以及安装后的归档文件和可执行文件: 第一个工作区比较重要,go get会自动从一些主流公用代码仓库下载 ...

  9. golang 环境变量讲解

    以下配置以MAC 下配置为例,但其他环境下大同小异. GOROOT就是go的安装路径在~/.bash_profile中添加下面语句: GOROOT=/usr/local/go export GOROO ...

随机推荐

  1. 使用docker部署微服务

    https://my.oschina.net/silenceyawen/blog/1819472 http://jvm123.com/2019/08/docker-shi-yong.html 从201 ...

  2. markdown转html

    今天临时要写接口文档,然后发现部门给的文档是markdown文件的,而接口文档是要html格式的,因此想直接把markdown转为html 这里我使用的是marked 首先初始化一个node项目 np ...

  3. 2019 第二届 科成安洵杯 官方WriteUp -17网安

    长文预警:对应源码请加企鹅群获取:861677907 0x01 WEB 1.1 勇闯贪吃蛇大冒险 一进去就看出来是一道web页面JS的小游戏,提示说输入CDUESTC CTF即可闯关成功,但是存在着d ...

  4. windows安装IIS不成功的原因

    一.背景 之前做过一段时间的实施,因此总结一下IIS安装不成功会有哪些原因导致的,希望给踩坑的人提供思路和帮助. 二.分析原因 1.系统问题,比如Windows家庭版本(独白:我之前花了一天的时间安装 ...

  5. mybatis之批量查询

    关于MyBatis批量更新和添加,参考我的如下文章即可:MyBatis的批量更新实例 MyBatis的批量添加实例 另外不管是批量的新增.删除.修改.查询也好,还是单个新增.删除.修改查询也罢.都会用 ...

  6. RSA算法java实现(BigInteger类的各种应用)

    一.RSA算法 1.密钥生成 随机生成两个大素数p.q 计算n=p*q 计算n的欧拉函数f=(p-1)*(q-1) 选取1<e<f,使e与f互素 计算d,ed=1modf 公钥为(e,n) ...

  7. Salt-Formulas的使用

    Saltstack自0.17.x版本开始引进Formulas的概念,旨在通过简化State和集成数据来实现State的友好管理.根据SALT FORMULAS的官方文档,在完成手动添加formula目 ...

  8. Windows Server 2008 + IIS 7+ ASP.NET 并发优化

    Windows Server 2008 + IIS 7+ ASP.NET 并发优化 站点出现这样的错误信息: Error Summary: HTTP Error 503.2 - Service Una ...

  9. Evolutionary approaches towards AI: past, present, and future

    Evolutionary approaches towards AI: past, present, and future 2019-10-06 07:28:13 This blog is from: ...

  10. AES采用CBC模式128bit加密工具类

    写在前面 安全测试ECB模式过于简单需要改为CBC模式加密以下为工具类及测试 AESUtils.java package com.sgcc.mobile.utils; import sun.misc. ...