trozen:
どちらが推奨されるアプローチです。
private final List<Object> list = new ArrayList<>();
public List<Object> getListView() {
return Collections.unmodifiableList(list);
}
若しくは
private final List<Object> list = new ArrayList<>();
private final List<Object> listView = Collections.unmodifiableList(list);
public List<Object> getListView() {
return listView;
}
後者は、オブジェクトの作成に保存されますが、それは努力の価値がありますか?
Mureinik:
作成unmodifiableList
O(1)操作です(基本的に、それはインスタンスjava.util.Collections$UnmodifiableList
データメンバーにしてassingsあなたのリストを)。
あなたは持っていない限り、非常に反して、それはおそらくちょうどそれをキャッシュするの面倒価値がない表示されていること、あなたの特別な例説得力のベンチマークを。