我正在尝试使用循环填充ArrayList
。我究竟做错了什么?当我打印ArrayList
时,没有任何内容被打印出来。我认为我的问题与numbers.size()
。
ArrayList<Integer> numbers = new ArrayList<>(7);
for (int i = 1; i <= numbers.size(); i++) {
numbers.add(i);
}
答案 0 :(得分:1)
最初,列表为空,表示numbers.size()
返回0
。因此,永远不会输入循环,因为1 <= 0
是false
。
答案 1 :(得分:1)
在第ArrayList<Integer> numbers = new ArrayList<>(7);
行中7 - 不是大小。大小仍等于0,因为您没有添加任何元素。所以numbers.size()是0。
构造函数中的参数是initialCapacity
。这是ArrayList中内部数组的起始长度。
答案 2 :(得分:1)
问题在于minimum-scale
。这一行numbers.size()
创建一个初始容量等于或大于7的ArrayList,但创建的ArrayList的大小为0.所以程序不会转到你的循环
答案 3 :(得分:1)
这里有两个问题:
ArrayList<Integer> numbers = new ArrayList<>(7);
您需要指定作业双方的类型
for (int i = 1; i <= numbers.size(); i++) {
numbers.add(i);
数组和ArrayLists的索引从0开始,因此make i为零,并使用小于而不是小于或小于等于。最后,这应该工作。刚刚编辑过,看起来我有些不对劲。将numbers.size()改为常量,这应该可以正常工作
ArrayList<Integer> numbers = new ArrayList<Integer>(7);
for (int i = 0; i < 7; i++) {
numbers.add(i);
}