Scala 中 && 和 & 运算符的区别
Mohammad Irfan
2023年1月30日
2022年5月18日
本文将讨论 Scala 中 &&
和 &
运算符之间的区别。 &&
和&
都是条件运算符,用于测试任何需要两个操作数的逻辑表达式并返回 true
或 false
,即基于表达式结果的布尔值。
&
运算符是逻辑和按位运算符,因为它对布尔值和二进制数据都进行运算。 &&
运算符是一个逻辑运算符,仅适用于 Scala 中的布尔数据类型。
&
运算符计算表达式的两边以获得最终结果。如果第一个表达式返回 false
,&&
运算符将只计算表达式的左侧,而不计算表达式的右侧。
在 Scala 中使用逻辑 &&
运算符
我们正在使用 &&
运算符比较一些整数值。它返回真
或假
。
object MyClass {
def main(args: Array[String]) {
var a = 10
var b = 20
var c = 10
if(a==b && a==c)
print("All the values are equal")
else
print("Not equal")
}
}
输出:
Not equal
在 Scala 中使用按位 &
运算符
我们使用按位运算符 &
来比较一些整数值。如果两个值都是 true
,它也会返回 true
。
object MyClass {
def main(args: Array[String]) {
var a = 10
var b = 20
var c = 10
if(a==b & a==c)
print("All the values are equal")
else
print("Not equal")
}
}
输出:
Not equal
这是检查这些(&&
和 &
)运算符之间差异的最佳方法。 &&
运算符也称为短路运算符,因为如果第一个表达式已经为 false
,它不会检查第二个表达式。
在这里,我们将 b
变量的值增加 1
以检查编译器是否执行第二个表达式,并查看输出是否与预期相同。
object MyClass {
def main(args: Array[String]) {
var a=4
var b=5;
println((a == 6) && ((b=b+1) == 6));
println("b= "+b);
}
}
输出:
false
5