【发布时间】:2018-06-06 11:04:32
【问题描述】:
我有两个字符串列表,listA 和 listB。 listA 更长,我想通过向其添加空字符串来使 listB 具有相同的大小。
这行得通:
int diff = listA.size() - listB.size()
for (int i = 0; i < diff; i++) {
listB.add("");
}
但这不是:
for (int i = 0; i < (listA.size() - listB.size()); i++) {
listB.add("");
}
为什么会这样?
【问题讨论】:
-
因为你要改变listB的大小
-
在第一种情况下,
diff在你进入循环之前计算一次,它的值保持不变。在第二种情况下,(listA.size() - listB.size())在每次迭代时都会重新计算。
标签: java for-loop conditional-statements