方法addAll(int index, Collection<? extends E> c)
并add(E e)
返回 aboolean
以通知元素已成功添加。另一方面,add(int index, E element)
没有。
为什么会这样?我如何知道是否可以添加元素?
方法addAll(int index, Collection<? extends E> c)
并add(E e)
返回 aboolean
以通知元素已成功添加。另一方面,add(int index, E element)
没有。
为什么会这样?我如何知道是否可以添加元素?
add(E)
是 的成员Collection
。对于某些类型的集合——Set
尤其是保证唯一性的集合——有时添加一个元素可能会以一种不足为奇的方式“失败”,因为该元素已经在集合中。在这种情况下,布尔返回值很有用。
add(int, E)
另一方面,它是 的成员List
,并且以这种方式将元素添加到列表中永远不会失败 -List
根据定义, a 可以包含重复元素。
addAll(int, Collection<E>)
有点难。它是 的成员List
,因此根据定义,添加不会被拒绝。Javadoc 说“如果此列表因调用而更改”,则返回 true。我想如果参数是一个空集合,它可能会返回 false。这似乎不是很有用。
但请注意,有一个addAll(Collection<E>)
in ,并且当所有添加的元素都是重复的并且集合是 a 时Collection
,它可以返回。所以我想该方法返回是因为该方法确实 - 为了对称,而不是出于任何真正的需要。false
Set
List
boolean
Collection