是否可以在Java中创建一个数组列表(具有固定大小)?
我尝试过这些方法并且它们都给我一个语法错误:
List<int[]> failedParameters = new ArrayList<int[3]>();
List<int[]> failedParameters = new ArrayList<new int[3]>();
我做错了什么?
答案 0 :(得分:5)
不,您不能将数组长度指定为Java 类型。但是,您可以使用自己的类型包装数组。我会让你决定这是否真的很实用(如果你有几十个你希望支持的数组长度):
class Int3 {
// Use final to indicate that the array length will remain unchanged
final int[] array = new int[3];
}
List<Int3> failedParameters = new ArrayList<Int3>();
当然,如果你走到这一步,为什么不创建一个3阶的元组?
class Int3 {
int v1;
int v2;
int v3;
}
List<Int3> failedParameters = new ArrayList<Int3>();
答案 1 :(得分:1)
您可以使用此方法。它不允许您更改集合大小(没有add()/ remove()操作)。
List<> unmodiffableList = Collections.unmodifiableList(oListeRet);