Go 语言没有前置的 ++ 和 -- 运算符。code
package operator_test import ( "fmt" ) //引入代码依赖 func TestCompareArray(t *testing.T) { a := [...]int{1, 2, 3, 4} b := [...]int{1, 3, 2, 4} c := [...]int{1, 2, 3, 4, 5} d := [...]int{1, 2, 3, 4} t.Log(a == b) //false t.Log(a == c) //编译报错,长度不一致 t.Log(a == d) //true }
按位清零运算符。it
const ( Readable = 1 << iota Writable Executable ) func TestBitClear(t *testing.T) { a := 7 //0111 a = a &^ Readable //清除读权限 a = a &^ Executable //清除执行权限 t.Log(a&Readable == Readable, a&Writable == Writable, a&Executable == Executable) }