以下方法线程安全吗

索拉·库玛(Saurabh Kumar)

我想知道以下方法是否是线程安全的。

用例:我从不同位置传递了两个集合...

public static Collection<String> checkIfValidUUIDCollectionAndRefine(Collection<String> uuids){
        for(String uuid : uuids){
            if(!checkIfValidUUID(uuid)){
                uuids.remove(uuid);
            }
        }
        return uuids;
    }
ge

它将ConcurrentModificationException为每个无效的UUID抛出

第二点是因为:

    for(String uuid : uuids){
        if(!checkIfValidUUID(uuid)){
            uuids.remove(uuid);
        }
    }

foreach循环在内部创建一个迭代器,但是您可以修改该迭代器。您必须创建一个迭代器并使用.remove()

例如:

final Iterator<String> iterator = uuids.iterator();
String uuid;
while (iterator.hasNext()) {
    uuid = iterator.next();
    if (!checkIfValidUUID(uuid))
        iterator.remove();
}
return uuids;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

类方法线程安全吗?

来自分类Dev

这种方法线程安全吗?

来自分类Dev

我的getStatement方法线程安全吗?

来自分类Dev

从实例方法线程调用静态方法安全吗?

来自分类Dev

java.lang.Class方法线程安全吗?

来自分类Dev

jaxrs 1.1(WLP 8.5)注释方法线程安全吗?

来自分类Dev

C#此方法线程安全吗?

来自分类Dev

GenericObjectPools借款对象方法线程安全吗?

来自分类Dev

关于Spring JpaRepository方法线程安全

来自分类Dev

以下线程安全吗?

来自分类Dev

Java ArrayList.add()方法线程可安全用于纯并行添加吗?

来自分类Dev

如何在JAVA中使静态方法线程安全?

来自分类Dev

此静态方法线程安全还是需要同步

来自分类Dev

具有局部变量的全局方法线程安全

来自分类Dev

以下C函数是线程安全的吗?

来自分类Dev

以下C函数是线程安全的吗?

来自分类Dev

C ++方法线程

来自分类Dev

静态方法是线程安全的吗?

来自分类Dev

以下Java代码线程安全无挥发吗?

来自分类Dev

以下获取/重置对线程在C#中安全吗?

来自分类Dev

以下日期格式化代码线程安全吗?

来自分类Dev

C ++类方法线程

来自分类Dev

HTML Helper方法是线程安全的吗?

来自分类Dev

NSMutableArray的addObject方法是线程安全的吗?

来自分类Dev

多线程,Task.Run错误'以下方法或属性之间的调用不明确'

来自分类Dev

如何使以下方法通用?

来自分类Dev

开启枚举方法线程错误

来自分类Dev

qDebug()线程安全吗?

来自分类Dev

XCGLogger线程安全吗?