黑马程序员技术交流社区

标题: 【知识普及】JAVA运算符“%”的含义与读音 [打印本页]

作者: 布德鸟    时间: 2016-4-21 22:21
标题: 【知识普及】JAVA运算符“%”的含义与读音
本帖最后由 布德鸟 于 2016-4-21 23:01 编辑

昨天在学习黑马基础day02教学视频时,听到老师读这段代码“3 % 5”为“三mó以五”,我在想这是什么鬼,“%”不是读取余吗!
于是我百度了一下相关资料,思绪明朗,整理如下:
①运算符“%”的含义
运算符“%”可代表两种运算,一种是取余运算,一种是取模运算。
在不同的环境下,%运算符的含义不同,比如c/c++/java为取余,python为取模。
②取余运算 和 取模运算 的差别
取模运算 和 取余运算 两个概念有重叠的部分但又不完全一致。
运算公式都为: r = a % b (a, b为整型数);
运算的步骤都是:
1. 求整数商: c = a / b;
2. 计算模或者余数: r = a - c * b.
取余运算 和 取模运算 在第一步不同:取余运算在取c的值时,向0 方向舍;而取模运算在计算c的值时,向负无穷方向舍。

例子:计算 -7 % 4
那么:a = -7;b = 4;
第一步:求整数商,进行求余 c = -1(向0方向舍入),求模运算 c = -2(向负无穷方向舍入);
第二步:取余和取模的公式相同,但因c的值不同,求余时 r = -3,求模时 r = 1。

我用java测试了下,还真是取余(所以笔者建议java中的“%”读成“取余”),有图有真相:
计算“-7 % 4”的值输出到控制台

输出-3


很少总结记录东西,希望保持这个好习惯,谢谢大家~

参考资料:
百度百科—取模运算
http://baike.baidu.com/view/4887065.htm



作者: 小白想学javaEE    时间: 2016-4-21 22:35
水黑马币真够丧心病狂
作者: 布德鸟    时间: 2016-4-21 22:58
小白想学javaEE 发表于 2016-4-21 22:35
水黑马币真够丧心病狂

我写的很认真的
作者: 小白想学javaEE    时间: 2016-4-22 22:19
布德鸟 发表于 2016-4-21 22:58
我写的很认真的

你为毛还在用Windows的记事本,用editplus吧
作者: 格城先生    时间: 2016-4-22 22:54
参考资料来源就暴露了
作者: 布德鸟    时间: 2016-4-24 22:53
小白想学javaEE 发表于 2016-4-22 22:19
你为毛还在用Windows的记事本,用editplus吧

用最原始的资源装b
作者: 布德鸟    时间: 2016-4-24 22:54
格城先生 发表于 2016-4-22 22:54
参考资料来源就暴露了

特意给你们看的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2