Scala运算符

算术运算符

对于除号 “/” ,它的整数除和小数除是有区别的,整数之间做除法时,只保留整数部分,而舍弃掉小数部分。

val result1: Int = 10 / 3    //得到结果为3,因为结果为Int类型

val result2: Double = 10 / 3    //得到3.0,因为先到到的3,后转化的类型

val result3: Double = 10.0 / 3    //得到3.33...5,计算之前把低精度提升到高精度后进行计算

关系运算符


在Java中,直接用 == 来判断两者是否相等,Java会判断两者的引用地址,会出现内容相等,但出现false的情况

String s1 = “hello”;

String s2 = new String(original: “hello”);

Boolean isEqual = s1 ==s2;    //打印出来为false

System.out.println( s1.equals (s2) );    //判断两者内容是否相同,打印出来为true

在Scala里面,修改了弊端,在其中做判断,相当于直接调用了equals方法

println(s1.eq(s2))    相当于Java中的 == 方法,会判断两者的引用地址是否相等

逻辑运算符

逻辑运算符由于连接多个条件,最终结果也是一个Boolean值

A为true,B为false

当用&&的时候,第一个值为false时,直接判断为false,而不判断下一个。

与上面一致 || 出现一个true时,直接判断为true

逻辑非最常用的做法是判断一个字符串是否为空

def isNotEmpty(str: String): Boolean = {
  return str != null && !("".equals(str.trim))

运算符操作

a为60,b为13

a : 00111100

b : 00001101

a & b = 12    //0000 1100,同一为一,其余为零

a | b = 61    //0011 1101,有一为一,全零为零

a ^ b = 49    //0011 0001,同位的相同为0,相异为1

~ a = -61    //1100 0011,按位取反运算符

<<  左移动运算符    //a<<2 结果为240,0011 0000

>>  左移动运算符    //a>>2 结果为15,0000 1111

2相当于乘4,3相当于乘8,4相当于乘16

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值