我有这段代码:
List<Integer> list1 = new ArrayList<Integer>();
list1.add(100);
list1.add(200);
list1.add(300);
list1.add(400);
list1.add(500);
list1.add(600);
Integer LastElement = list1.get(list1.size()-1);
System.out.println("Values of the list:" + list1-LastElement); !!!
列表的值应为:100,200,300,400,500。
list1-LastElement
给了我一个错误!还有其他办法吗?
答案 0 :(得分:4)
你要做的是从arraylist的长度中减去值600(arraylist的最后一个值)。这毫无意义。而是尝试以下(如果您尝试打印除最后一个元素之外的所有内容):
for (int i = 0; i < list1.size() - 1; i++) {
System.out.println(list1.get(i));
}
这将会打印除最后一个元素之外的所有内容。因此
list1.size() - 1
答案 1 :(得分:1)
在您需要循环的列表中打印值:
for(int i=0;i<list1.size();i++) {
System.out.println(list1.get(i))
}
打印列表中的值,而不是缩短循环所需的最后一个:
for(int i=0;i<list1.size()-1;i++) {
System.out.println(list1.get(i))
}
答案 2 :(得分:0)
要获取List
的子列表,请使用subList
。 (关键是已经知道方法的名称.API文档很容易浏览。)
if (list1.size() >= 1) {
System.out.println(
"Values of the list:" +
list1.subList(0, list1.size()-1)
);
}
请注意List
返回的subList
是实时视图。设置一个或其他列表的元素会更新另一个列表。 API文档中的更多信息。