使 ArrayList 大小等于 Java 中可用的其他数组列表
Making ArrayList Size equal to other Array Lists Available in Java
我有 2 个不同大小的 ArrayList。例子 -
Array1.size() = 10
Array2.size() = 5
我希望这些数组始终具有相同的大小。因此,我有另一个 class 来确保这一点。但显然,它对我不起作用。请帮忙!
下面是 Class 代码 -
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
上面的 for 循环没有将 'Test' 添加到 Array2,因此它与 Array1 的大小相匹配。有什么想法吗?请帮忙!
因为 i 永远不会等于 Array1.size(),所以这个循环不会添加任何东西
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
你的循环使用了错误的条件。
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
这意味着循环在 i == Array1.size()
期间运行,这当然是无稽之谈。
尝试
for (int i = Array2.size(); i < Array1.size(); i++) {
Array2.add(i, "Test");
}
根据 doc for 循环是:
for (initialization; termination; increment) {
statement(s) }
When using this version of the for statement, keep in mind that:
- 初始化表达式初始化循环;它在循环开始时执行一次。
- 当终止表达式的计算结果为假时,循环终止。
- 增量表达式在循环的每次迭代后被调用;这个表达式递增是完全可以接受的
或减少一个值。
在你的例子中,循环是:
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
它从 5
(Arrays2.size())
开始,并检查 i==10
是否为真(读为假),因此它在不执行任何操作的情况下终止。它根本不进入循环。
我有 2 个不同大小的 ArrayList。例子 - Array1.size() = 10 Array2.size() = 5 我希望这些数组始终具有相同的大小。因此,我有另一个 class 来确保这一点。但显然,它对我不起作用。请帮忙! 下面是 Class 代码 -
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
上面的 for 循环没有将 'Test' 添加到 Array2,因此它与 Array1 的大小相匹配。有什么想法吗?请帮忙!
因为 i 永远不会等于 Array1.size(),所以这个循环不会添加任何东西
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
你的循环使用了错误的条件。
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
这意味着循环在 i == Array1.size()
期间运行,这当然是无稽之谈。
尝试
for (int i = Array2.size(); i < Array1.size(); i++) {
Array2.add(i, "Test");
}
根据 doc for 循环是:
for (initialization; termination; increment) { statement(s) } When using this version of the for statement, keep in mind that:
- 初始化表达式初始化循环;它在循环开始时执行一次。
- 当终止表达式的计算结果为假时,循环终止。
- 增量表达式在循环的每次迭代后被调用;这个表达式递增是完全可以接受的 或减少一个值。
在你的例子中,循环是:
for (int i = Array2.size(); i == Array1.size(); i++) {
Array2.add(i, "Test");
}
它从 5
(Arrays2.size())
开始,并检查 i==10
是否为真(读为假),因此它在不执行任何操作的情况下终止。它根本不进入循环。