我正在使用Java中的一个共享库,它返回ArrayList。当我遍历它时,可能会抛出ConcurrentModificationException异常,我希望能有100%保证安全。我考虑了以下内容,欢迎任何建议。
data_list是从MT库返回的ArrayList<>。
boolean pass = true;
ArrayList<Something> local = new ArrayList<Something>(256);
for (int spin=0; spin<10; ++spin)
{
try {
local.addAll(data_list);
}
catch (java.util.ConcurrentModificationException ce) {
pass = false;
}
finally {
if (pass) break;
pass = true;
}
}
假设变量
pass
为true
,我应该如何操作本地?
local = new ArrayList<>(data_list.size());
而不仅仅是使用256。 - Jules