Golang-运算符

Posted essaycode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang-运算符相关的知识,希望对你有一定的参考价值。

运算符的基本介绍
  运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等
  1)算术运算符
  2)赋值运算符
  3)比较运算符/关系运算符
  4)逻辑运算符
  5)位运算符
  6)其它运算符

算术运算符

  算术运算符是对数值类型的变量进行运算的,比如:加减乘除。在 Go 程序中使用的非常多

  技术图片

案例演示算术运算符的使用。
  +, - , * , / , %, ++, -- , 重点讲解 /、%
  自增:++ 自减:--

演示 / 的使用的特点

  技术图片

 演示 % 的使用特点

// 演示	% 的使用
// 看一个公式 a % b = a - a / b * b
fmt.Println("10%3=", 10 % 3) // =1
fmt.Println("-10%3=", -10 % 3) // = -10 - (-10) / 3 * 3 = -10 - (-9) = -1
fmt.Println("10%-3=", 10 % -3) // =1
fmt.Println("-10%-3=", -10 % -3) // =-1

++ --的使用

  技术图片

4.2.3算术运算符使用的注意事项
  1)对于除号 "/",它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。 例如: x := 19/5 ,结果是 3
  2)当对一个数取模时,可以等价 a%b=a-a/b*b , 这样我们可以看到 取模的一个本质运算。
  3)Golang 的自增自减只能当做一个独立语言使用时,不能这样使用

     技术图片

   4)Golang 的++ 和 -- 只能写在变量的后面,不能写在变量的前面,即:只有 a++ a-- 没有 ++a --a

     技术图片

  5)Golang 的设计者去掉 c / java 中的 自增自减的容易混淆的写法,让 Golang 更加简洁,统一。(强制性的)

  练习题

  1)假如还有 97 天放假,问:xx 个星期零 xx 天
  2)定义一个变量保存华氏温度,华氏温度转换摄氏温度的公式为:5/9*(华氏温度-100),请求出华氏温度对应的摄氏温度。

     技术图片

 

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

  1)关系运算符的结果都是 bool 型,也就是要么是 true,要么是 false
  2)关系表达式 经常用在 if 结构的条件中或循环结构的条件中

     技术图片

    案例演示

      技术图片

 关系运算符细节说明

  1)关系运算符的结果都是 bool 型,也就是要么是 true,要么是 false。
  2)关系运算符组成的表达式,我们称为关系表达式: a > b
  3)比较运算符"=="不能误写成 "=" !!

 

逻辑运算符

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

  技术图片

   案例演示

     技术图片          技术图片   技术图片

 

   注意事项和细节说明 

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

    3) 案例演示

       技术图片

 

 

 

赋值运算符

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

   赋值运算符的分类

     技术图片

 

 

     技术图片

  赋值运算的案例演示

  案例演示赋值运算符的基本使用。
  1)赋值基本案例
  2)有两个变量,a 和 b,要求将其进行交换,最终打印结果
  3) += 的使用案例
  4) 案 例

     技术图片

  赋值运算符的特点
  1)运算顺序从右往左

     技术图片

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

     技术图片

   3)复合赋值运算符等价于下面的效果比如:a += 3  等价于 a = a + 3

 

  面试题

    有两个变量,a b,要求将其进行交换,但是不允许使用中间变量,最终打印结果

    技术图片

 

 

 其他运算符

  技术图片技术图片

 

特别说明

  技术图片

 

 运算符的优先级

  技术图片

 

以上是关于Golang-运算符的主要内容,如果未能解决你的问题,请参考以下文章

代码片段 - Golang 实现简单的 Web 服务器

代码片段 - Golang 实现集合操作

json [Golang] golang #golang #snippets中有用的片段

片段是否执行基础数据的复制?

java golang oop 2文章片段

golang 去练习片段