[英]Diamond Generic and Legacy in Java
在館藏中我發現了以下內容:
@SuppressWarnings("unchecked")
public static final List EMPTY_LIST = new EmptyList<>();
我真的找不到任何理由使用:
new EmptyList<>()
這里代替:
new EmptyList()
就像java <1.7一樣。
這種方法有什么區別嗎?
如果您只關心<>運算符,那么您應該看到Java 7中的菱形運算符有什么意義? 。
關於EMPTY_LIST:您要么:
@SuppressWarnings("rawtypes")
List list = Collections.EMPTY_LIST;
或者類似的東西:
List<String> s = Collections.emptyList();
使用<>運算符的原因是維護原始類型的編譯時檢查。 以上鏈接描述得很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.