适用于list元素不太多的场景
public static boolean isItemsEqual(List<?> list1, List<?> list2){
List<?> newL1 = Optional.ofNullable(list1).orElseGet(Collections::emptyList);
List<?> newL2 = Optional.ofNullable(list2).orElseGet(Collections::emptyList);
if (newL1 == newL2) { return true; }
if (newL1.size() != newL2.size()) { return false; }
newL2 = new LinkedList<>(newL2);
for (Object item : newL1) {
if (!newL2.remove(item)){
return false;
}
}
return newL2.size() == 0;
}