我的代码如下,我得到 ConcurrentModificationException,特别是在 (String file : files) 的行中
在进行迭代时我没有为“文件”更改任何内容,那么为什么会导致异常以及我应该如何避免它呢?感谢您的任何建议!
int getTotalLength(final HashSet<String> files) {
int total = 0;
int len;
for (String file : files) {
len = getLength(file);
if (len != Long.MIN_VALUE) {
total += len;
}
}
return total;
}
int getLength(String file) {
int len = Long.MIN_VALUE;
if (file == null) {
return len;
}
File f = new File(file);
if (f.exists() && f.isFile()) {
len = f.length();
}
return size;
}