Quantcast
Channel: 質問!ITmedia 新着質問(Java/253)
Viewing all articles
Browse latest Browse all 2439

四捨五入をするメソッドを実装したい(Java)

$
0
0
Math.round()のように小数点以下を四捨五入するメソッド作りたいです。 できれば、数値計算(数学的に?)で実数を処理したいです。 自分で作れたのはintで型キャストするやり方で、あまり納得していません。 うまく数学的な処理で小数点以下を判別して、四捨五入の結果を返すことはできませんか? ちなみに自作したものはこんなかんじです↓。 public class MyRoundTest {    // 四捨五入    static int myRound(double d){       int sign = (d < 0) ? -1 : 1;       double mid = (int)(d)+sign*0.5;       return (d*sign >= mid*sign)? (int)d+sign: (int)d;    }    public static void main(String[] args){       double[] d = {2.4, 2.5, -2.4, -2.5, 4.5};       for(double element : d){          System.out.println(element+"\t→\t"+myRound(element));       }    } } /* 出力結果は 2.4→2 2.5→3 -2.4→-2 -2.5→-3 4.5→5 です。 */

Viewing all articles
Browse latest Browse all 2439

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>