第3章 java的基本程序设计结构【补缺学习】【变量与运算符】【核心技术卷I】

1. 由Math.floorMod()引发的思考

System.out.println("关于整数取余");
System.out.println("*************************");
System.out.println(2%10);
System.out.println(12%10);
System.out.println("结论1:余数为最简被除数");
System.out.println(-2%10);
System.out.println(-12%10);
System.out.println("结论2:余数为最简被除数(包括符号)");
System.out.println(2%-10);
System.out.println(12%-10);
System.out.println("结论3:余数为最简被除数(结合结论2说明余数的符号与被除数有关,与除数无关)");
System.out.println(-2%-10);
System.out.println(-12%-10);
System.out.println("结论4:再次验证结论3");
System.out.println("*************************");
System.out.println("对比Math.floorMod()");
System.out.println(Math.floorMod(2,10));
System.out.println(Math.floorMod(12,10));
System.out.println(Math.floorMod(-2,10));
System.out.println(Math.floorMod(-12,10));
System.out.println(Math.floorMod(2,-10));
System.out.println(Math.floorMod(12,-10));
System.out.println(Math.floorMod(-2,-10));
System.out.println(Math.floorMod(-12,-10));
System.out.println("在前面理解的基础上的记忆");
System.out.println("双正双负 同余数");
System.out.println("单正单负 补除数");

 

关于整数取余
*************************
2
2
结论1:余数为最简被除数
-2
-2
结论2:余数为最简被除数(包括符号)
2
2
结论3:余数为最简被除数(结合结论2说明余数的符号与被除数有关,与除数无关)
-2
-2
结论4:再次验证结论3
*************************
对比Math.floorMod()
2
2
8
8
-8
-8
-2
-2
在前面理解的基础上的记忆
双正双负 同余数
单正单负 补除数

进程已结束,退出代码 0

2. 有三个数值类型自动转换存在精度丢失的可能  (强制转换都存在精度丢失的可能) 

int -> float   long ->float   long ->double 

3. 不要将布尔类型与其它类型进行强制转换,这样可以防止一些常见的错误,如果非要用的话,可以用  a?1;0来进行另类转换 

boolean a=false;
int b=a?1:0;
System.out.println(a);
System.out.println(b);

 4. 

int a=0;
a += 2.5;
System.out.println(a);

当运算符得到一个值,其类型与左侧操作符不同,就会发生强制类型转换  本质就是(int)(a+2.5)

 5. >>> 用0填充高位   >>用符号位填充高位

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值