首頁  >  文章  >  Java  >  為什麼在使用 List.add() 時出現 UnsupportedOperationException?

為什麼在使用 List.add() 時出現 UnsupportedOperationException?

DDD
DDD原創
2024-11-07 07:23:03752瀏覽

Why Am I Getting an UnsupportedOperationException When Using List.add()?

Java List.add() UnsupportedOperationException:理解並解決

在 Java List 中加入元素應該很簡單,但有時會出現 UnsupportedOperationException。為什麼會發生這種情況?

在 Java 中,並非所有 List 實作都支援 add() 方法。一個常見的罪魁禍首是 Arrays.asList() 傳回的 List。根據其文檔,它是一個“固定大小”列表,不允許進行結構修改,例如添加元素。

即使您的清單不是 Arrays.asList() 的結果,其他類別或程式庫也可能提供清單具有有限的可變性或不可變性。若要檢查您的 List 是否支援 add(),請查閱其文件或 JavaDocs 以了解 UnsupportedOperationException 和 List.add()。

要解決此問題,請考慮將不受支援的List 的副本建立為已知可修改的實作就像ArrayList:

<code class="java">seeAlso = new ArrayList<>(seeAlso);</code>

這樣,您可以對複製的ArrayList進行修改,而不會面臨UnsupportedOperationException。

以上是為什麼在使用 List.add() 時出現 UnsupportedOperationException?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn