コレクションでは、次のことがわかりました。
@SuppressWarnings("unchecked")
public static final List EMPTY_LIST = new EmptyList<>();
私は本当に使用する理由を見つけることができません:
new EmptyList<>()
代わりに:
new EmptyList()
Java < 1.7 の場合と同様です。
このアプローチに違いはありますか?
<> 演算子だけに関心がある場合は、What is the point of the diamond operator in Java 7?を参照してください。.
EMPTY_LIST について: どちらか:
@SuppressWarnings("rawtypes")
List list = Collections.EMPTY_LIST;
または次のようなもの:
List<String> s = Collections.emptyList();
<> 演算子を使用する理由は、生の型のコンパイル時のチェックを維持するためです。上記のリンクはそれをよく説明しています。