斯坦福大学开放课程: 《编程方法》第6课

第六课:操作符
readInt() 和 readDouble()函数,整形与浮点数的除法运算操作符,操作符优先级,类型转换,常量,布尔数据类型,值的比较,布尔表达式,短路求值,语句块,变量的作用域,if套嵌,switch语句,for循环语句,while循环语句

 

求余运算符只对整数适用,因为求余运算符对实数没有意义。

 

除法在整数和双精度上运算方法有点不同。当你在做除法时,如果两个参数均为整数,在这种情况下它会做整数除法,就是做除法后丢掉余数,所有你得到的依然是个整数。例如整数5除以整数2,你会得到结果为整数2,随之的余数1就丢掉了。要是其中有一个是实数的话,比如一个双精度实数,那么这里就会做实数除法并返回实数。所有对于这里的例子5除以2改成5除以2.0的话,结果就会得到2.5这个双精度实数而不是一个整数。

 

P = (x != 1) || (x !=2); 
 

 不论x取任何值,P都为真。这是一个典型的漏洞,编写程序的时候如果不考虑清楚逻辑就会出现重大的BUG,而且很容易让人迷惑。

 

短路计算,在不同情况下他们很是有用的。例如避免除数为0的情况出现,可以写为

P = (x == 0) && ((y/x)==0);
 

 如果x等于0,直接判断为假,不用处理后面的语句。这样你就永远不会有除数为0的情况。

 

switch条件必须是整数值,不可以是双精度类型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值