2012-10-03 97 views
0

我知道这很容易,可以用2行代码完成,但我很想知道是否存在任何这样的功能 我有一个int,它告诉我列表的大小,我需要创建列表说从大小创建一个列表

List<Integer> intList; 

我可以通过大小类似

for(int i=1 ; i <= size; i++) // started with 1 as i want it from 1 
{ 
    fill list 
} 

很容易地遍历创造这一点,但我只是在想,好像存在无论是在收集API或Apache常见任何这样的方法 我可以通过大小来获得Lis吨,给定大小

编辑

我可能无法把问题以适当的方式,我想充满了我的名单说 如果大小= 4比我的想法生根粉东西

Integer=1 
Integer=2 
Integer=3 
Integer=4 

,不与大小4

我知道问题一个空列表没有多大意义,但还是它能够更好地清除您的问题

+0

列表最终应包含哪些内容?如果你只是想要一个初始化的给定大小的列表,你可以简单地使用一个数组。 –

+1

当您向其添加元素时,“List”会自动增长。您不需要在创建列表时指定大小。只需创建一个空列表并向其中添加元素。 – Jesper

+0

声明一个初始大小对速度有正面影响,所以它不是无用的 – Minion91

回答

0

这里的事情是,List是一个接口类,你不能创建接口类的实例。所以在你想构建它之前,你需要知道你想创建什么样的List。暂时让我们假设你想要一个ArrayList。从这一刻起,您可以简单地使用正确的构造函数来初始化您的列表,例如

List<Integer> intList = new ArrayList<Integer>(10); 

它构建初始容量的10

一个ArrayList对于其他类型的列表,你可以检查Java documentation

以填补初始数据的列表,你可以做这样的事情:

int[] myArray = new int[]{ 58,63,67,72,70,63,62,63 }; 
List<Integer> intList = new ArrayList<Integer>(myArray); 
+0

不,这将创建一个** ArrayList **,其初始**容量**为10,**大小**为0. – Jesper

+0

正确,但问题很模糊,现在得到纠正 – Minion91

0

要回答你与你的编辑添加了什么之后的问题:没有,有没有这样的方法来填充与列表在标准集合API中递增整数。您必须自己编写一个循环,并将元素添加到列表中。

2

简短的回答:没有

两班轮您目前使用的已经是最优的。