简易Java(05):Javadouble
示例
其实,这篇文章所讲内容非常简单、非常基础。相信99%的Java程序员都了解。不过,为了整个《简易Java》系列的完整性,还是把这篇文章翻译出来了。大家可以忽略这篇文章,直接飞过。
你应该遇到过这样的情形,你想得到一个double
类型的数,但是却得到一个int
类型的数。
对于如下方法,devide(2, 3)
将返还0.0。
/** * Coder: D瓜哥,http://www.diguage.com/ */ public static double devide(int x, int y) { return x / y; }
问题就在于x / y
进行的是整形除法。如果想让他们进行浮点数除法,就必须对两个数中的一个进行类型转换。(double) x / y
和x / (double) y
都可以。正确代码如下:
/** * Coder: D瓜哥,http://www.diguage.com/ */ public static double devide(int x, int y) { return (double) x / y; }
很多时候,我们更想要一个带一定精度的浮点数。有很多方式都可以实现,下面的这个是常用的简单方法。如果你想要精确到两位小数点的结果,则可以使用如下方法:
/**
* Coder: D瓜哥,http://www.diguage.com/
*/
public static double devide(int x, int y) {
double z = (double) x / y;
double pro = Math.round(z * 100);
return pro / 100;
}
《Simple Java》是一本讲解Java面试题的书。讲解也有不少独特之处,为了面试,《简易Java》走起!
作 者: D瓜哥,https://www.diguage.com/
原文链接:double示例">https://wordpress.diguage.com/archives/84.html
版权声明:非特殊声明均为本站原创作品,转载时请注明作者和原文链接。
原文链接:double示例">https://wordpress.diguage.com/archives/84.html
版权声明:非特殊声明均为本站原创作品,转载时请注明作者和原文链接。