Java 界隈で
やれ、「ラムダ式が。。」
やれ、「JEP 286 Local-Variable Type Inference を称賛する人と違和感の人がどうこうの。。。」
やれ、「Java 11 になれば、jdk.incubator.http として登場した JEP 321: HTTP Client はインキュベータでなくなる??」
だの、、有意義な議論はあるかと思いますが、、、
こんなことに気が付かないなんて、Dukeちゃんに叱られますよ。
恥ずかしいことに、、new 演算子コンストラクタで生成する癖で、
t.stream().sorted((a, b)->new Integer(a.value).compareTo(new Integer(b.value)))
なんてコードを書いてしまっていたが、、
Java9 から、new Integer(String) や、new Integer(int) は、@Deprecated(since="9")
になったので、以下のように書くべき。。。
t.stream().sorted((a, b)->Integer.valueOf(a.value).compareTo(Integer.valueOf(b.value)))
new 演算子コンストラクタでオブジェクト生成する文法の癖は、結構良くないかも。。
プリミティブクラスは、皆、こうなる。。
new 演算子コンストラクタを避けて代わりに、 |
Integer.valueOf(int) |
Integer.valueOf(String) |
Long.valueOf(long) |
Long.valueOf(String) |
Double.valueOf(double) |
Double.valueOf(String) |
Byte.valueOf(byte) |
Byte.valueOf(String) |
Short.valueOf(short) |
Short.valueOf(String) |
Float.valueOf(float) |
Float.valueOf(String) |