由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - immutable list
相关主题
List, LinkedList and Vector问个primitive type的问题
Unmodifiable List concurrent access 问题Java SE6 LinkedList implementation issue
state::update的用法是Java 8吗 (转载)请问这个面试题,关于synchronize hashmap
is access to int[] faster than List?Java里有没有象cell array一样的东西
Java 问题[合集] 问一个很常见的过程的实现
一个Java程序员的话(3)怎样用class的string type name 动态生成object?
请问有没有generic的arraymodify parameter, or return?
java 的函数 xxx(a, b,c)能够向a 写入数据吗?Java练习题 12
相关话题的讨论汇总
话题: list话题: immutable话题: object话题: class
进入Java版参与讨论
1 (共1页)
p***p
发帖数: 559
1
I have writen some config data in a List and have to immutable reference,
how? or create a clone copy?
g*****g
发帖数: 34805
2
You can have your list as a field in another class,
say ImmutableList, and in this class you only expose
method that you want to expose. e.g. only the get(int i)
class ImmutableList {
private List data;
public Object get(int i) {
return data.get(i);
}
}

【在 p***p 的大作中提到】
: I have writen some config data in a List and have to immutable reference,
: how? or create a clone copy?

p***p
发帖数: 559
3
Well, I have to reture a List
object, so any suggestion?

【在 g*****g 的大作中提到】
: You can have your list as a field in another class,
: say ImmutableList, and in this class you only expose
: method that you want to expose. e.g. only the get(int i)
: class ImmutableList {
: private List data;
: public Object get(int i) {
: return data.get(i);
: }
: }

g*****g
发帖数: 34805
4
这个建议不加,因为是要只读的,一旦实现List,那些add/remove方法都要实现,
固然可以实现为空方法或抛异常,但都不如编译时就告诉你这个方法没有。
不过可以先定义一个ImmutableListInterface。

【在 p***p 的大作中提到】
: Well, I have to reture a List
: object, so any suggestion?

p***p
发帖数: 559
5
是不是还加个implements?
还是extends ArrayList,然后再overload
class ImmutableList implements List{
private List data;
public Object get(int i) {
return data.get(i);
}
}

【在 g*****g 的大作中提到】
: You can have your list as a field in another class,
: say ImmutableList, and in this class you only expose
: method that you want to expose. e.g. only the get(int i)
: class ImmutableList {
: private List data;
: public Object get(int i) {
: return data.get(i);
: }
: }

m******y
发帖数: 102
6
Collections.unmodifiableList(List list)

【在 p***p 的大作中提到】
: I have writen some config data in a List and have to immutable reference,
: how? or create a clone copy?

r*****l
发帖数: 2859
7
嘿嘿,这是用java的人给出的答案。前面的几个回答不错,但是因为java已经实现了,
就用不着费力气了。

【在 m******y 的大作中提到】
: Collections.unmodifiableList(List list)
1 (共1页)
进入Java版参与讨论
相关主题
Java练习题 12Java 问题
Java是如何处理ArrayList和LinkedList的内存的?一个Java程序员的话(3)
如何造Array of Generic Type请问有没有generic的array
关于 Java beanjava 的函数 xxx(a, b,c)能够向a 写入数据吗?
List, LinkedList and Vector问个primitive type的问题
Unmodifiable List concurrent access 问题Java SE6 LinkedList implementation issue
state::update的用法是Java 8吗 (转载)请问这个面试题,关于synchronize hashmap
is access to int[] faster than List?Java里有没有象cell array一样的东西
相关话题的讨论汇总
话题: list话题: immutable话题: object话题: class