面试题答案
一键面试package main
import "fmt"
func check(a, b bool) bool {
return a &&!b
}
布尔类型操作符在Go语言中有 &&
(逻辑与)、||
(逻辑或)和 !
(逻辑非)。
- 逻辑与
&&
:只有当左右两边的表达式都为true
时,整个表达式才为true
。例如A && B
,只有A
为true
且B
为true
,结果才是true
。如果A
为false
,则不会再计算B
(短路特性)。 - 逻辑或
||
:只要左右两边的表达式有一个为true
,整个表达式就为true
。例如A || B
,A
为true
或者B
为true
,结果就是true
。如果A
为true
,则不会再计算B
(短路特性)。 - 逻辑非
!
:对一个布尔值取反。例如!A
,如果A
为true
,则!A
为false
;如果A
为false
,则!A
为true
。
在 check
函数中,a &&!b
表示当 a
为 true
并且 b
取反(即 b
为 false
)时,返回 true
,否则返回 false
。