This question帶來了一個類似如下(從這個問題複製)代碼的問題:從Android中的參數分配集合的首選方式是什麼?
public MyClass {
public void initialize(Collection<String> data) {
this.data = data; // <-- Bad!
}
private Collection<String> data;
}
存儲參考通過不慎將數據注入私有字段data
打開門的錯誤。 Aaron Digulla接受的答案提出了在傳遞之前凍結集合Collection.setUnmodifiable(set);
的策略,但他提到權衡是性能問題,因爲任何想修改集合的人都需要複製它,然後將其保存下來背部。
在極其資源有限的Android環境中處理此問題時是否有任何最佳實踐?
似乎最好的辦法不是在以這種方式使用它們之後對集合進行變異。也許這可以通過文檔和意見來鼓勵... – jahroy