【Java】すぐに理解できる!minを使って2つの数値の小さい方を求める!

2つの数値の小さい方を求める場合にはMathクラスのminメソッドを使用します。

Mathクラスのminメソッドは、2つの数値を比較して小さい方の値を取得するメソッドであり、引数に指定できる値はdouble型・float型・int型・long型と種類があります。

しかし、int型とdouble型のように違う型同士を引数に指定すると比較はできませんので注意してください。

今回はMathクラスのminをメソッドを使って以下の場合に2つの数値の小さい方を求めていきます。
⚫︎ 2つの数値を比較し、小さい方を求める場合
⚫︎ 正の0と負の0を比較し、小さい方を求める場合
⚫︎ NaN(非数)値と比較し、小さい方を求める場合

minメソッドとは

Mathクラスのminメソッドは、数値を比較してより小さな値を取得するメソッドとなります。

minメソッドの書き方

minメソッドの構文は下記となります。

minの()に数値1と数値2を指定することで数値1と数値2の値を比較し、小さい方の数値を取り出します。

また、比較対象のどちらかにNaN値が含まれている場合は「NaN」を戻します。

minメソッドの注意点

3つ以上の数値を比較することができない

minメソッドは3つ以上の数値を比較することはできません。

出力結果

Main.java:9: error: no suitable method found for max(int,int,int)

適したメソッドが見つからない為、エラーが発生しています。
minメソッドは2つの数値を比較するメソッドなのでパラメータは2つになります。

2つの数値が違う型だと比較することができない

「int型とdouble型」のように2つの数値が違う型だと比較することができませんので注意してください。

出力結果

incompatible types: possible lossy conversion from double to int

int型とdouble型を比較しようとしている為、エラーが発生しています。

2つの数値の小さい方を求めるサンプルコード

2つの数値の小さい方を求めるサンプルコードを紹介します。

2つの数値を比較する場合

出力結果

val1とval2とを比較:123

無限大の場合は最大値、最小値を四捨五入して返します。

正の0と負の0を比較する場合

出力結果

[0.0]と[-0.0]とを比較:-0.0

正のゼロと負のゼロを比較した場合は、正のゼロを戻します。

Nan値と比較する場合

出力結果

NaNと[456]とを比較:NaN
NaNと[-456]とを比較:NaN

NaNが含まれる数字と比較する場合はNaNを返します。

今回のポイント

minで2つの数値の小さい方を求める

2つの数値の小さい方を求めるにはMathクラスのminメソッドを使用する。

⚫︎ Mathクラスのminメソッドで比較したい2つの数値をのパラメータとして渡すと、小さい方の数値を返す

⚫︎ minメソッドは3つ以上の数値を比較したり、違う型同士で比較することはできない

⚫︎ 正のゼロと負のゼロを比較した場合は、負のゼロを小さい数値として返す

⚫︎ 比較対象のどちらかに「NaN」値が含まれている場合、NaN小さい数値として返す

関連記事

2つの数値を比較し、大きい方を求めるmaxメソッドについてはこちらをご参考ください。

Writer

ST

株式会社flyhawkのSTです。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報