Go 算术运算符

一 运算符的基本介绍

运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。主要包括以下几类。

  • 算术运算符

  • 赋值运算符

  • 比较运算符/关系运算符

  • 逻辑运算符

  • 位运算符

  • 其它运算符

二 算术运算符

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

三 算术运算符一览表

四 实战

1 代码

package main

import (
   "fmt"
)

func main() {
   // 如果运算的数都是整数,那么除后,去掉小数部分,保留整数部分
   fmt.Println(10 / 4)
   var n1 float32 = 10 / 4
   fmt.Println(n1)
   // 如果希望保留小数部分,则需要有浮点数参与运算
   var n2 float32 = 10.0 / 4
   fmt.Println(n2)
   // 演示  % 的使用
   // 求模 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
   // ++ 和 --的使用
   var i int = 10
   i++ // 等价 i = i + 1
   fmt.Println("i=", i) // 11
   i-- // 等价 i = i - 1
   fmt.Println("i=", i) // 10
   if i > 0 {
      fmt.Println("ok")
   }
}

2 结果

2
2
2.5
10%3= 1
-10%3= -1
10%-3= 1
-10%-3= -1
i= 11
i= 10
ok

五 算术运算符使用的注意事项

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 更加简洁,统一。

func main() {
   // 在 golang 中,++ 和 -- 只能独立使用.
   var i int = 8
   var a int
   a = i++ // 错误,i++ 只能独立使用
   a = i-- // 错误,i-- 只能独立使用

   if i++ > 0 // error,只能独立使用
   {
      fmt.Println("ok")
   }

   var j int = 1
   j++
   ++j // 错误,在 golang 没有前++
   j--
   --j // 错误,在 golang 没有前--
   fmt.Println("j=", j)
}

六 小测试

七 小练习

1 要求

a 假如还有 97 天放假,问:它等于多少个星期零几天?

b 定义一个变量保存华氏温度,华氏温度转换摄氏温度的公式为:5/9*(华氏温度-100),请求出华氏温度对应的摄氏温度。

2 代码

package main

import (
   "fmt"
)

func main() {
   // 假如还有 97 天放假,问:它等于多少个星期零几天?
   var days int = 97
   var week int = days / 7
   var day int = days % 7
   fmt.Printf("%d个星期零%d天\n", week, day)
   // 定义一个变量保存华氏温度,华氏温度转换摄氏温度的公式为:5/9*(华氏温度-100),请求出华氏温度对应的摄氏温度。
   var huashi float32 = 134.2
   var sheshi float32 = 5.0 / 9 * (huashi - 100)
   fmt.Printf("%v 对应的摄氏温度=%v \n", huashi, sheshi)
}

3 测试

13个星期零6天
134.2 对应的摄氏温度=19

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值