我需要安全地将一个集合(可以为NULL)添加到另一个集合。
在Apache Commons中有任何替代方法,以避免实现我自己的自定义方法,如下所示:
public static <E> void addAllIfNotNull(List<E> list, Collection<? extends E> c) {
if (c != null) {
list.addAll(c);
}
}
我需要以下情况:
我有一个方法:
@Override
public CardPair createWithRandomCards(Board board, List<Long> exludeCardCategoryIds, List<Long> exludeCardIds) {
if (board == null) {
throw new EntityNotFoundException(ErrorMessage.BOARD_NOT_FOUND);
}
exludeCardIds = CollectionUtils.addAllIfNotNull(getCardIds(board), exludeCardIds);
...
}
我在代码中的某个地方使用了这个方法:
cardPair = boardCardService.createWithRandomCards(currentBoard, null, null);
exludeCardCategoryIds
,exludeCardIds
- 有时可能为null,在这种情况下,我不想为它们创建虚拟空集合。
目标是避免NULL的冗余条件并将它们移出到util方法。
这个api有什么问题?