在循环内创建新List
时For
具有相同名称。这意味着一次计算空间复杂性还是每次循环计算它。让我们说:
for (int u = 0; u < 5; u++) {
List<String> fileNameList = new ArrayList<String>();
fileNameList.add(concatinateFileWithTf);
}
在前面的示例中,我创建了具有每个循环但名称相同的fileNameList
。这是否意味着我创建新列表并且每次都应该计算其空间复杂性,或者它为此列表进行还原?
这是否意味着我创建新列表并且每次都应该计算其空间复杂性
是的。
来自new ArrayList<>();
的 javadoc :
构造初始容量为 10 的空列表。
因此,每次迭代都为大小为 1 和容量为 10 的列表分配内存。
问问是否还不清楚。