如果您要添加的内容与谓词不匹配,Apache Commons Collections中是否有一种方法可以使PredicatedList(或类似内容)不引发IllegalArgumentException?如果不匹配,它将忽略将项添加到列表的请求。

因此,例如,如果我这样做:

List predicatedList = ListUtils.predicatedList(new ArrayList(), PredicateUtils.notNullPredicate());
...
predicatedList.add(null); // throws an IllegalArgumentException


我希望能够执行上述操作,但是会忽略添加null而不会引发任何异常。

我不能从JavaDocs弄清楚Commons Collections是否支持这一点。我想尽可能地做到这一点,而无需滚动自己的代码。

最佳答案

你不能就吞下例外吗?

try
{
    predicatedList.add(null);
}
catch(IllegalArgumentException e)
{
    //ignore the exception
}


您可能需要写一个包装器来为您做这件事...

10-08 18:49