Javaで小数点以下のdoubleの値を取得することは可能ですか?
double number = 1.6
小数部分が 6 の場合 ( 、または 2.6、または 98.6 など) 、コードでエラー メッセージを生成するようにします。6でない場合は、「正しい」と印刷したいだけです。
double の小数部分を取得するにはどうすればよいですか?
Javaで小数点以下のdoubleの値を取得することは可能ですか?
double number = 1.6
小数部分が 6 の場合 ( 、または 2.6、または 98.6 など) 、コードでエラー メッセージを生成するようにします。6でない場合は、「正しい」と印刷したいだけです。
double の小数部分を取得するにはどうすればよいですか?
厳密に言えば: 不可能 - 理由: double に正確に .6 の小数値を含めることはできません (.6 で終わる数値は double として正確に表現できません)。
ただし、丸められた文字列表現が .6 であるかどうかを確認できます。
DecimalFormat f = new DecimalFormat("#0.0");
String s = f.format(mydoublevalue);
if (s.contains(".6")) {
// error
} else {
// correct
}
String stringNumber=""+number;
if(stringNumber.contains(".6"){
promt user
}
これを試して:
if(number - Math.floor(number) == 0.6){
prompt error
}
double をフロアし、その値を double から差し引いて、小数部分をチェック用に残すことができます。
double number = 2.6;
double numberWholePart = Math.floor(number);
double numberFractionPart = number - numberWholePart;
if(numberFractionPart == 0.6) {
System.out.println("error!");
}