1

我写:

this.array = (X[]) Array.newInstance(init.getClass(), size);

// ...

public List<X> get()  {        
    return Collections.<X>unmodifiableList(this.array);
}

但我得到了错误:

集合中的 unmodifiableList 不能应用于 (X[])

如何创建通用的不可修改列表?

4

2 回答 2

2

你需要这样做:

public List<X> get()
{
    List<X> modifiableList = Arrays.asList( this.array );
    return Collections.unmodifiableList( modifiableList );
}
于 2017-07-27T08:38:33.897 回答
1

你可以这样做:

public List<X> get()  {
    return Collections.unmodifiableList(Arrays.asList(this.array));
}
于 2017-07-27T08:33:45.470 回答