Go语言之运算符

package main

import "fmt"

func main() {
	fmt.Println("--------------------------")
	a := 10
	b := 20
	fmt.Println(a + b)
	// fmt.Println(a - b)
	// fmt.Println(a * b)
	fmt.Println(5 / 2)
	fmt.Println(5 % 2)
	//++ 和-- 在Go语言中与C语言不同,
	//++ 和-- 是单独的语句,并不是运算符,不能加其他参数或者变量
	a++
	fmt.Println(a)
	fmt.Println("-----------0--------------")
	//关系运算符,返回 true 或者返回 false
	fmt.Println(10 > 2)
	fmt.Println(10 != 2)
	fmt.Println(10 < 2)
	//逻辑运算符 && || !   返回true false
	fmt.Println("-----------1--------------")
	fmt.Println(2 > 1 && 3 < 4)
	fmt.Println(2 == 1 || 3 > 4)
	fmt.Printf("-----------2--------------\n")
	//位运算符
	//位运算符对整数在内存中的二进制位进行操作。
	c := 1               //001, 与101右对齐来看
	d := 5               //101
	fmt.Println(c & d)   //001,参与运算的两数各对应的二进位相与,两位均为1才为1
	fmt.Println(c | d)   //101,十进制5,参与运算的两数各对应的二进位相或,两位有一个为1就为1
	fmt.Println(c ^ d)   //100,十进制4,两位不一样则为1
	fmt.Println(1 << 2)  // 1左移两位    =>100
	fmt.Println(4 >> 2)  // 100右移两位  =>1
	fmt.Println(1 << 10) //2^10=1024
	fmt.Println("-----------3--------------")
	//赋值运算符 = += -= *= %= <<= >>= &= |= ^=
	d %= 2 //求余后再赋值
	fmt.Println(d)
	c <<= 10 //左移后赋值
	fmt.Println(c)
	c = 1
	d = 5
	c &= d //按位与后赋值
	fmt.Println(c)
	c |= d //按位或后赋值
	fmt.Println(c)
}

你可能感兴趣的:(golang,go语言)