Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
Math.abs() / max() / min() / round() / floor() / ceil()
数値の絶対値・最大値・最小値の取得、四捨五入・切り捨て・切り上げ、べき乗・平方根・乱数生成など、数学的な計算を行うユーティリティクラスです。すべてのメソッドは static なので、インスタンスを作らずに Math.メソッド名() の形式で呼び出せます。
構文
// 絶対値を返します。 Math.abs(値); // 2つの値のうち大きい方を返します。 Math.max(値1, 値2); // 2つの値のうち小さい方を返します。 Math.min(値1, 値2); // 四捨五入します(long 型を返します)。 Math.round(値); // 切り捨てします(double 型を返します)。 Math.floor(値); // 切り上げします(double 型を返します)。 Math.ceil(値); // べき乗を計算します。 Math.pow(底, 指数); // 平方根を返します。 Math.sqrt(値); // 0.0 以上 1.0 未満の乱数を返します。 Math.random();
メソッド一覧
| メソッド | 概要 |
|---|---|
| Math.abs(x) | 引数の絶対値を返します。int・long・float・double 型に対応しています。 |
| Math.max(a, b) | 2つの引数のうち大きい方を返します。 |
| Math.min(a, b) | 2つの引数のうち小さい方を返します。 |
| Math.round(x) | 四捨五入した値を返します。float の場合は int、double の場合は long を返します。 |
| Math.floor(x) | 引数以下の最大の整数を double 型で返します(切り捨て)。 |
| Math.ceil(x) | 引数以上の最小の整数を double 型で返します(切り上げ)。 |
| Math.pow(a, b) | a の b 乗を double 型で返します。 |
| Math.sqrt(x) | 引数の平方根を double 型で返します。 |
| Math.random() | 0.0 以上 1.0 未満の乱数を double 型で返します。 |
サンプルコード
// 絶対値を取得します。 System.out.println(Math.abs(-5)); // 『5』と出力されます。 System.out.println(Math.abs(3.14)); // 『3.14』と出力されます。 // 最大値・最小値を取得します。 System.out.println(Math.max(10, 20)); // 『20』と出力されます。 System.out.println(Math.min(10, 20)); // 『10』と出力されます。 // 四捨五入・切り捨て・切り上げをします。 System.out.println(Math.round(3.5)); // 『4』と出力されます。 System.out.println(Math.round(3.4)); // 『3』と出力されます。 System.out.println(Math.floor(3.9)); // 『3.0』と出力されます。 System.out.println(Math.ceil(3.1)); // 『4.0』と出力されます。 // べき乗・平方根を計算します。 System.out.println(Math.pow(2, 10)); // 『1024.0』と出力されます。 System.out.println(Math.sqrt(16)); // 『4.0』と出力されます。 // 1〜10のランダムな整数を生成します。 int rand = (int)(Math.random() * 10) + 1; System.out.println(rand); // 1〜10のいずれかが出力されます。
概要
『Math.floor()』と『Math.ceil()』は double 型を返します。整数として扱う場合は (int) でキャストしてください(例: (int)Math.floor(3.9) は 3)。
『Math.round()』は負の数の扱いに注意が必要です。Math.round(-3.5) は -3(正方向に丸め)を返します。また、『Math.random()』よりも java.util.Random クラスや ThreadLocalRandom クラスの方が柔軟な乱数生成ができます。
整数の定数・進数変換については『Integer.MAX_VALUE / MIN_VALUE / toBinaryString()』を参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。