Go中if条件下的非布尔值
我在Go中有一个if语句,如下所示:Go中if条件下的非布尔值,go,Go,我在Go中有一个if语句,如下所示: if level & 1 { // do something } else { // do something else } 我的原因中的level变量的类型为uint。但当我对1进行按位AND运算时,结果不是布尔值。这是C的有效语法,但显然在Go中不起作用。你知道如何解决这个问题吗?围棋中的If语句,你可以使用一个,结果是bool: if level&1 != 0 { // do something } else
if level & 1 {
// do something
} else {
// do something else
}
我的原因中的level
变量的类型为uint
。但当我对1进行按位AND运算时,结果不是布尔值。这是C的有效语法,但显然在Go中不起作用。你知道如何解决这个问题吗?围棋中的If语句,你可以使用一个,结果是bool:
if level&1 != 0 {
// do something
} else {
// do something else
}
在我看来,这无疑是Go语言的最佳设计决策。避免了这么多错误