A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马不黑 中级黑马   /  2013-12-5 21:40  /  768 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑马不黑 于 2013-12-5 22:56 编辑

一:“%”取模(求余)
1.左边的数(正整数)小于右边的数,取模的结果为左边的数;
例如:3%5 = 3;
2.左边的数等于右边的数,取模结果为零;
例如:5%5 = 0;
3.如果表达式中出现了负数,取模的结果和正数一样,只是数值的正负由被模数的正负决定(左边的数值);
例如:5%-1 = 5; -1%5 = -1; -5%2 = -1
二: +=的细节问题
例如:
folat count = 2;
count = count + 3;
运行上面代码时,会报错,而运行下面代码:
folat count = 2;
count += 3;
则不会报错。原因是,当执行count = count + 3时,实际上JVM运行了两步,先把count的值类型提升为int, 然后再和3相加,可是加完后的结果是int类型,当赋值给左边的count时候,会出现精度丢失,所以会报错;
而执行count += 3时,JVM只是单纯的进行赋值运算,系统会自动进行类型转换,所以可以执行。

评分

参与人数 1技术分 +1 收起 理由
简★零度 + 1

查看全部评分

3 个回复

倒序浏览
学习了
3.如果表达式中出现了负数,则取模结果为被模数(左边的数值);//这句不对 取余方式不变 只是正负有除数前的符号来决定
例如:5%-1 = 5; -1%5 = -1;          -5%2=-1

评分

参与人数 1技术分 +1 收起 理由
简★零度 + 1

查看全部评分

回复 使用道具 举报
四五六七八 发表于 2013-12-5 22:14
学习了
3.如果表达式中出现了负数,则取模结果为被模数(左边的数值);//这句不对 取余方式不变 只是正 ...

谢谢更正啊
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马