包含所有列表Java

List a = new ArrayList(); List b = new ArrayList(); a.add("apple"); a.add("orange"); System.out.println(a.containsAll(b)); 

上面的程序打印出一个True。 不明白为什么它打印真实?

因为B是空的。 A包含B中的所有内容。

因为b是空的。 因此, b中没有任何东西不在。

这是一个逻辑问题: A是否包含B内的所有元素?

这可以看作B中的每个元素,这个元素也属于A吗?

你可以理解条件是真的,因为B是空的,没有要检查的元素:对于B中的每个元素,所以没有元素。

如果列表包含目标中的所有元素,List.ContainsAll将返回true。 因为B是空的A包含与B相同的所有元素。

显然是一个错字。 b.add(“橙色”)就是这个意思。