算术运算符
关系运算符
Java 和 Scala 中关于“==”的区别
逻辑运算符
赋值运算符
位运算符
Scala运算符总结
基本与Java一致
// 测试:>、>=、<=、<、==、!=var a: Int = 2var b: Int = 1println(a > b) // trueprintln(a >= b) // trueprintln(a <= b) // falseprintln(a < b) // falseprintln("a==b" + (a == b)) // falseprintln(a != b) // true
Java: ==比较两个变量本身的值,即两个对象在内存中的首地址; equals 比较字符串中所包含的内容是否相同。
Scala:==更加类似于 Java 中的 equals
在Scala中使用eq方法相当于判断对象引用地址是否相同
val s1 = "abc"
val s2 = new String("abc")
println(s1 == s2)
println(s1.eq(s2))
用于连接多个条件(一般来讲就是关系表达式),最终的结果也是一个 Boolean 值。
// 测试:&&、||、!var a = truevar b = falseprintln("a&&b=" + (a && b)) // a&&b=falseprintln("a||b=" + (a || b)) // a||b=trueprintln("!(a&&b)=" + (!(a && b))) // !(a&&b)=true
注意:Scala 中没有++、--操作符,可以通过+=、-=来实现同样的效果
在 Scala 中其实是没有运算符的,所有运算符都是方法。
// 标准的加法运算val i:Int = 1.+(1)// (1)当调用对象的方法时,.可以省略val j:Int = 1 + (1)// (2)如果函数参数只有一个,或者没有参数,()可以省略val k:Int = 1 + 1