Go 语言学习基本运算符的使用
/*
基本运算符包括:1、算术运算符 2、赋值运算符 3、逻辑运算符 4、关系运算符
1、算术运算符有哪些
+ 加 实例 10 + 5 结果 15
- 减 实例 10 - 5 结果 5
* 乘 实例 10 * 5 结果 50
/ 除 实例 10 / 5 结果 2
% 取模(取余) 10 % 5 结果 0
++ 后自增(没有前自增) a:=0; a++ 结果 a=1
-- 后自减(没有后自减) a:= 2 ;a-- 结果 a=1
Go 语言中不允许隐式转换,所有类型转换必须显示声明强制转换,并且转换发生在两种相互兼容的类型之间
语法 数据类型名(待转的值) 注意:int 转 float 强制转换,多小数; float 转 int 强制转换,丢失精度
补充:关于 + 运算符,除了可以完成两个数字相加以外,也可以连接字符串
2、赋值运算符 “=”
var num = 9
num=num+1 #这里的=号是赋值运算符,不是数学的相等的意思
运算符 = 说明 普通运算符 实例 c=a+b 将 a+b的值赋值给c
+= 说明 相加后再赋值 实例 c+=a 等价 c = c+a
3、逻辑运算符
有逻辑运算符连接的表达式叫做逻辑表达式,逻辑表达式的结果也是bool
运算符 ! 非 实例 如果a为假,侧!a为真、如果a为真,侧!a为假
&& 与 a && b
|| 或 a||b
4、关系运算符
关系运算符又称比较运算符,结果是布尔类型的
运算符 == 相当于
!= 不等于
> 大于
*/
package main
import (
"fmt"
"math"
)
func main(){
fmt.Println("=========算术运算符=========")
num1:=100
num2:=200
fmt.Printf("num1+num2=%v",num1+num2)
age:=23
age++
fmt.Println("\nage:",age) //\n在字符串里面是换行
area:=math.Pi*10*10
fmt.Println("半径是10的圆的面积是:",area)
fmt.Println("==========赋值运算符==============")
var num int = 10
fmt.Println(num)
num*=3//问题num的值是多少? num=num*3
fmt.Println("num的值是:",num)
fmt.Println("==========关系运算符==========")
flag1:=100>200
flag2:=num==30
fmt.Println(flag1,flag2)
fmt.Printf("flag1的类型是%T,flat2的类型是%T",flag1,flag2)
fmt.Println("\n==========逻辑运算符===========")
temp1 := 5>3 || 2>3
fmt.Println(temp1)
var m,n=10,20
temp2 :=m>=10 && n>=20
fmt.Println(temp2)
}
结果
=========算术运算符=========
num1+num2=300
age: 24
半径是10的圆的面积是: 314.1592653589793
==========赋值运算符==============
10
num的值是: 30
==========关系运算符==========
false true
flag1的类型是bool,flat2的类型是bool
==========逻辑运算符===========
true
true