包含所有列表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(“橙色”)就是这个意思。