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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© j816326 中级黑马   /  2013-7-2 23:38  /  1762 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 j816326 于 2013-7-3 12:46 编辑

Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
答案很简单,原理有谁能告诉我。

评分

参与人数 1黑马币 +3 收起 理由
杨兴庭 + 3

查看全部评分

8 个回复

倒序浏览
这个很简单,一个是是天花板值,一个是地板值这么理解就行了.至于详细原理么.round方法返回与参数最接近的长整数,参数加1/2后求其floor.
回复 使用道具 举报
Math.round()方法是先将参数加上0.5然后去取它的Math.floor()值
floor 如果参数是正数则小数部分全舍,参数是负数则小数部分全入
回复 使用道具 举报
很好。懂了
回复 使用道具 举报
Math.round 返回最接近参数的 long。 正数小数去除,负数相反
回复 使用道具 举报
round()方法你可以这样理解:就是括号内的数+0.5之后,向下取整。就像你说的啊Math.round(11.5),11.5+0.5=12,Math.round(11.5)=12;
Math.round(-11.5),-11.5+0.5=-11,Math.round(-11.5)=-11。
了解不?形象的说, 你就加上0.5,然后就在坐标轴上找下一个整数就是。
回复 使用道具 举报
Math类中提供了三个与取整有关的方法:ceil、floor、round,这些方法的作用与它们的英文名称的含义相对应,例如,ceil的英文意义是天花板,该方法就表示向上取整,所以,Math.ceil(11.3)的结果为12,Math.ceil(-11.3)的结果是-11;floor的英文意义是地板,该方法就表示向下取整,所以,Math.floor(11.6)的结果为11,Math.floor(-11.6)的结果是-12;最难掌握的是round方法,它表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果为12,Math.round(-11.5)的结果为-11。
回复 使用道具 举报
Math的round方法的作用是加0.5之后向下取整,这是java规定的我想原理也不必要掌握,它就是一种规则,必须遵守,嘿嘿
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马