int转double会存在丢失?

问题是这样的,当我用一个int类型的值去整除100的时候,结果用double类型接收,直接变成0.0了😣

 int a=97;double b=a/100;System.out.println("result:"+b);

输出结果如下:
在这里插入图片描述
正确写法:

//1
double b=a/100.0//2.
double b=(double) a/100//3.
double b=new BigDecimal(a).divide(new BigDecimal(100)..doubleValue();

总之如果要用double类型接收的话,必须的强转,或者被除数自身转为double类型,不然会产生精度丢失。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部