Java 9からIntegerとDoubleがDeprecated(非推奨)となっていました。
IntegerとDoubleがDeprecated(非推奨)
Java10で、こんなプログラムを書きました。
1 2 3 4 5 |
Integer i = new Integer(1); Double d = new Double(99.999); System.out.println(i); System.out.println(String.format("%.3f", d)); |
Eclipseでこんな感じのプログラムを書くと、コンストラクターの場所で取り消し線が引かれて???となった。
調べてみたら、Java9でコンストラクタに値を入れる系が非推奨になっていました。
詳しくは以下を参照。
・https://docs.oracle.com/javase/9/docs/api/java/lang/Double.html
代替、推奨は ValueOf を使う
Java10以降は、以下のようにValueOfを使うようです。
1 2 3 4 5 |
Integer i = Integer.valueOf(1); Double d = Double.valueOf(99.999); System.out.println(i); System.out.println(String.format("%.3f", d)); |
下記リンク先にコンストラクタの書き方で非推奨になったものがまとまっています。
・https://docs.oracle.com/javase/9/docs/api/deprecated-list.html#constructor
IntegerやDouble以外に、Boolean、Byte、Character、Date、Time、Float、Long、Shortでも同様に値を入れるコンストラクターは非推奨です。
コメント