zoukankan      html  css  js  c++  java
  • go运算符

    一、算术运算符

    • 列表
    运算符 描述
    + 相加
    - 相减
    * 相乘
    / 相除
    % 取余
    ++ 自增
    -- 自减
    • 实例
    package main
    
    import "fmt"
    
    func main(){
    	num1,num2 := 10,2
    	fmt.Println(num1 + num2) // 12
    	fmt.Println(num1 - num2) // 8
    	fmt.Println(num1 * num2) // 20
    	fmt.Println(num1 / num2) // 5
    	fmt.Println(11 % num2) // 1
    	num2++
    	fmt.Println(num2) // 3
    	num1--
    	fmt.Println(num1) // 9
    }
    
    

    二、关系运算符

    • 列表
    运算符 描述
    == 等于 比较左右两边的值是否相等,相等返回true,否则为false
    != 不等于 比较左右两边的值是否不相等,不相等返回true,否则为false
    > 大于 左边的值 大于 右边 则返回true,否则 为false
    < 小于 左边的值 小于 右边 则返回true,否则 为false
    >= 大于等于 左边的值 大于等于 右边 则返回true,否则 为false
    <= 小于等于 左边的值 小于等于 右边 则返回true,否则 为false
    • 实例
    package main
    
    import "fmt"
    
    func main(){
    	num1,num2 := 3,4
    	if num1 == num2 {
    		fmt.Println("num1 和 num2 相等")
    	}
    
    	if num1 != num2 {
    		fmt.Println("num1 和 num2 不相等")
    	}
    
    	if num1 > num2 {
    		fmt.Println("num1 大于 num2")
    	}
    
    	if num1 < num2 {
    		fmt.Println("num1 小于 num2")
    	}
    
    	if num1 >= num2 {
    		fmt.Println("num1 大于相等 num2")
    	}
    
    	if num1 <= num2 {
    		fmt.Println("num1 小于相等 num2")
    	}
    
    	// switch 用法 ,后面会着重讲解
    	switch{
    	case num1 == num2:
    		fmt.Print("num1 和 num2 相等")
    	case num1 != num2:
    		fmt.Print("num1 和 num2 不相等")
    	case num1 > num2:
    		fmt.Print("num1 大于 num2")
    	case num1 < num2:
    		fmt.Print("num1 小于 num2")
    	case num1 >= num2:
    		fmt.Print("num1 大于相等 num2")
    	case num1 <= num2:
    		fmt.Print("num1 小于相等 num2")
    	}
    
    	// switch最后只会输出 num1 和 num2 不相等,其他不会输出
    }
    
    

    三、逻辑运算符

    • 列表
    运算符 描述
    &&
    ||
    !
    • 举例
    package main
    
    import "fmt"
    
    func main(){
    	t1,t2 := true,false
    	if t1 && t2{
    		fmt.Println("t1,t2 都为真")
    	}
    
    	if t1 || t2{
    		fmt.Println("t1,t2 有一个为真")
    	}
    
    	if !t2{
    		fmt.Println("t2 为假,所以!t2 为真")
    	}
    
    	}
    
    

    四、赋值运算符

    • 列表
    运算符 描述
    = 简单的赋值操作
    += 相加后再赋值
    -= 相减后再赋值
    *= 相乘后再赋值
    /= 相除后再赋值
    %= 取余后再赋值
    • 实例
    package main
    
    import "fmt"
    
    func main(){
    	var num int
    	num1,num2 := 6,4
    	num = num2
    	num += num1
    	fmt.Println(num) // 10
    	num -= num2
    	fmt.Println(num) // 6
    	num *= num1
    	fmt.Println(num) // 36
    	num /= num2
    	fmt.Println(num) // 9
    	num %= num2
    	fmt.Println(num) // 1
    
    }
    

    五、位运算符

    • 列表
    运算符 描述
    & 按位与运算符"&" 二进制且操作,两个二进制位 对应的二进制 相与
    | 按位或运算符"
    ^ 按位异或运算符"^" 二进制或操作,两个二进制位 对应的二进制 相异
    << 左移运算符<< 左移n位就是乘以2的n次方
    >> 右移运算符">>" 右移n位就是除以2的n次方
    • 实例
    package main
    
    import "fmt"
    
    func main() {
    
       var a uint = 60      /* 60 = 0011 1100 */  
       var b uint = 13      /* 13 = 0000 1101 */
       var c uint = 0          
    
       c = a & b       /* 12 = 0000 1100 */ 
       fmt.Printf("第一行 - c 的值为 %d
    ", c )
    
       c = a | b       /* 61 = 0011 1101 */
       fmt.Printf("第二行 - c 的值为 %d
    ", c )
    
       c = a ^ b       /* 49 = 0011 0001 */
       fmt.Printf("第三行 - c 的值为 %d
    ", c )
    
       c = a << 2     /* 240 = 1111 0000 */     // 60 * 2^2
       fmt.Printf("第四行 - c 的值为 %d
    ", c )
    
       c = a >> 2     /* 15 = 0000 1111 */    // 60 / (2^2)
       fmt.Printf("第五行 - c 的值为 %d
    ", c )
    }
    

    如果喜欢看小说,请到183小说网

  • 相关阅读:
    C#下水晶报表打印自定义纸张
    设计模式应用之一:控件清空
    自定义StyleCop规则
    1.redis安装 单机
    dubbo个人总结
    spring+redis 集群下的操作
    mybatis调用存储过程 无参、带有输入输出参数,输出游标类型的 存储
    spring framework核心框架体系结构
    oracle‘s package,function,proceture编译时无响应(解决)
    Oracle 在线重定义表分区
  • 原文地址:https://www.cnblogs.com/xiaobaiskill/p/10587695.html
Copyright © 2011-2022 走看看