在 Java 清單結構中使用通配符:了解 List
所描述的場景涉及嘗試將資料新增至 List 的 List 中擴充數量>名為 foo3。但是,此操作會觸發編譯時錯誤。本文旨在闡明為什麼不允許此類操作,並全面解釋使用通配符的含義,特別是 List extends Number>`.
在 Java 中,通配符是表示未知類型的泛型類型。在集合上下文中,通配符可用於指定集合中可包含的元素類型的上限 (? extends T) 或下限 (? super T)。
在這種情況下列表 extends Number>,通配符聲明表明 List 可以保存 Number 子類別的任何類型。這意味著該清單可能包含整數、雙精度數、浮點數或任何其他 Number 子類別。然而,清單的確切類型是未知的。
鑑於這種不確定性,不可能確定哪種特定類型的物件可以安全地添加到清單中而不違反通配符聲明的約束。例如,如果清單實際上是 List
相反,如果列表是 List
因此,可以對 List 執行的唯一安全操作是從中讀取,因為任何添加或修改其元素的嘗試都可能違反其約束。此限制可確保清單的完整性並防止執行時間錯誤。
以上是為什麼我不能在 Java `列表中添加元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!