我正在尝试使用此代码创建初始大小为10
的数组列表。
List<EWSMessage> messages = new ArrayList<EWSMessage>(10);
List<EWSMessage> newMessages = new ArrayList<EWSMessage>(startMessages.size() - 10);
for (int i = 0, count = startMessages.size(); i < count; i++) {
if (i < 10) {
messages.set(i, startMessages.get(i));
} else {
newMessages.set(i - 10,startMessages.get(i));
}
}
我的问题是我需要填写数组列表,然后才能在for循环中设置值。我只是不知道该怎么做。此外,方法中将
startMessages
声明为List<EWSMessages>
。 最佳答案
该行创建一个初始容量为10的列表,但大小为零。
List<EWSMessage> messages = new ArrayList<EWSMessage>(10);
提供初始容量是可选的。当您向其中添加元素时,该列表将会增长。
添加元素的一种简单方法是使用add() method:
List<EWSMessage> messages = new ArrayList<EWSMessage>();
List<EWSMessage> newMessages = new ArrayList<EWSMessage>();
for (int i = 0, count = startMessages.size(); i < count; i++) {
if (i < 10) {
messages.add( startMessages.get(i));
} else {
newMessages.add( startMessages.get(i));
}
}