操作运算符

package _case

import "fmt"

// 关系运算
func RelationCase() {
	var a = 21
	var b = 10
	fmt.Println("a == b", a == b)
	fmt.Println("a != b", a != b)
	fmt.Println("a > b", a > b)
	fmt.Println("a < b", a < b)
	fmt.Println("a >= b", a >= b)
	fmt.Println("a <= b", a <= b)
}

// 逻辑运算
func LogicCase() {
	var a = true
	var b = false
	fmt.Println("a && b", a && b)
	fmt.Println("a || b", a || b)
	fmt.Println("!a", !a)
	fmt.Println("!b", !b)
}

func BitCase() {
	var a uint8 = 60
	var b uint8 = 13
	var c uint8 = 10

	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	// 相同位数 1 则为1
	c = a & b
	fmt.Println("a & b")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	// 存在一个为1 则为1
	c = a | b
	fmt.Println("a | b")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	// 非运算 1^1=0 1^0 = 1 0^0 = 0
	c = a ^ b // 三目运算符
	fmt.Println("a ^ b")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	// 位移运算 a 向左移动 2 位
	c = a << 2
	fmt.Println("a << 2")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	// 位移运算 a 向右移动 2 位
	c = a >> 2
	fmt.Println(" a >> 2")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	// 取反
	c = ^a
	fmt.Println(" ^a : ")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

	c = a &^ b
	fmt.Println(" a &^ b : ")
	fmt.Printf("a = %08b\n", a)
	fmt.Printf("b = %08b\n", b)
	fmt.Printf("c = %08b\n", c)

}

posted @ 2025-09-17 22:04  风动随心  阅读(7)  评论(0)    收藏  举报