Go 逻辑运算符使用及细节
逻辑运算符
- 基本介绍
- 用于连接多个条件(一般来讲就是关系表达式),最终的结果也是一个 bool 值
- 逻辑运算的说明
文章图片
- 演示案例1逻辑与:
//演示;逻辑运算符的使用
var age byte = 40
if age > 30 && age <50{
fmt.Println("ok1")
}
if age > 30 && age <40{
fmt.Println("ok2")
}
- 输出结果:
文章图片
- 演示案例2逻辑或:
var age byte = 40
if age > 30 || age <50{
fmt.Println("ok3")
}
if age > 30 || age <40{
fmt.Println("ok4")
}
- 输出结果:
文章图片
演示案例3逻辑非:
var age byte = 40
if age > 30 {
fmt.Println("ok5")
}
if !(age > 30) {
fmt.Println("ok6")
}
- 输出结果:
文章图片
注意事项和细节说明
- &&也叫短路与:
- 如果第一个条件为 false,则第二个条件不会判断,最终结果为 false
- ||也叫短路或:
- 如果第一个条件为 true,则第二个条件不会判断,最终结果为 true
- 演示案例短路与:
package main
import(
"fmt"
)
func test() bool{
fmt.Println("test执行了")
return true
}func main(){ var num byte = 10
if num > 30 && test() {
fmt.Println("条件执行了")
}
}
- 后面的test函数不执行。
package main
import(
"fmt"
)
func test() bool{
fmt.Println("test执行了")
return true
}func main(){
var num byte = 10
if num < 30 || test() {
fmt.Println("if条件执行了")
}
}
- 输出结果 ,test不执行:
文章图片
推荐阅读
- Shell-Bash变量与运算符
- 由浅入深理解AOP
- 【译】20个更有效地使用谷歌搜索的技巧
- mybatisplus如何在xml的连表查询中使用queryWrapper
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- iOS中的Block
- Linux下面如何查看tomcat已经使用多少线程