在将float或double转型为整型值时,总是对该数字执行截尾,如下例:
站在用户的角度思考问题,与客户深入沟通,找到吴起网站设计与吴起网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广、国际域名空间、网络空间、企业邮箱。业务覆盖吴起地区。
- public class CastingNumbers{
- public static void main(String[] args){
- double above = 0.7,below = 0.4;
- float fabove = 0.7f, fbelow = 0.4f;
- System.out.println("(int)above: " + (int)above);
- System.out.println("(int)below: " + (int)below);
- System.out.println("(int)fabove: " + (int)fabove);
- System.out.println("(int)fbelow: " + (int)fbelow);
- }
- }
输出:
(int)above: 0 (int)below: 0 (int)fabove: 0 (int)fbelow: 0
如果想要得到舍入的结果,就需要使用java.lang.Math中的round()方法:
- public class RoundingNumbers{
- public static void main(String[] args){
- double above = 0.7,below = 0.4;
- float fabove = 0.7f, fbelow = 0.4f;
- System.out.println("Math.round(above): " + Math.round(above));
- System.out.println("Math.round(below): " + Math.round(below));
- System.out.println("Math.round(fabove): " + Math.round(fabove));
- System.out.println("Math.round(fbelow): " + Math.round(fbelow));
- }
- }
输出:
Math.round(above): 1 Math.round(below): 0 Math.round(fabove): 1 Math.round(fbelow): 0
由于round()是java.lang的一部分,因此在使用它事不需要额外的导入。
原文链接:http://www.cnblogs.com/eczhou/archive/2011/12/12/2284407.html
【编辑推荐】
文章题目:Java编程:数据的截尾与舍入
文章转载:http://www.csdahua.cn/qtweb/news8/487458.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网