下の条件をplaygroundで試す前に考えてみましょう。真になると思いますか?偽になりますか?
package main
import (
"fmt"
)
func main() {
fmt.Println(true && true)
fmt.Println(true && false)
fmt.Println(true || true)
fmt.Println(true || false)
fmt.Println(!true)
}
&&
は被演算子が両方true
ならtrue
を返します。そうでないならfalse
を返します。
||
はどちらかの被演算子がtrue
ならtrue
を返します。
!
は反対の値を返します。
例を試してみてください。
package main
import (
"fmt"
)
func main() {
fmt.Printf("true && true\t %v\n", true && true)
fmt.Printf("true && false\t %v\n", true && false)
fmt.Printf("true || true\t %v\n", true || true)
fmt.Printf("true || false\t %v\n", true || false)
fmt.Printf("!true\t %v\n", !true)
}