私はint変数を使用しています:
month = dp.getMonth() + 1;
現在「2」の出力を取得しており、次のようにすると次のようになります。
if (month<10){
month = '0'+month;
};
私は得る:50。
問題は、'0'
char
が整数に強制変換されていることです。 '0'
の値はASCII値48
であるため、48 + 2 = 50
を取得します。
実行しようとしていることは機能しないことに注意してください。month
は数字であるため、先頭の0
をmonth
に追加することはできません。先頭のゼロは、数値の文字列表現でのみ意味があります。
この回答 で説明されているように、ゼロが埋め込まれた数値を生成する方法は次のとおりです。
String.format("%02d", month);