c++怎么把数组写到set容器中 并且输出 set容器中全部元素

c++怎么把数组写到set容器中 并且输出 set容器中全部元素,第1张

数组写入set直接调用set的一个构造函数,该构造函数的参数第一个是数组名,第二个是数组名+数组长度,这样就可以用数组直接构造一个set。输出的话直接迭代,解引用就行了,这是容器的基本 *** 作。

Set是一个接口,一个不包含重复元素的 collection。

方法摘要:

booleanadd(E e)

如果 set 中尚未存在指定的元素,则添加此元素(可选 *** 作)。

booleanaddAll(Collection<? extends E>c)

如果 set 中没有指定 collection 中的所有元素,则将其添加到此 set 中(可选 *** 作)。

voidclear()

移除此 set 中的所有元素(可选 *** 作)。

booleancontains(Object o)

如果 set 包含指定的元素,则返回 true。

booleancontainsAll(Collection<?>c)

如果此 set 包含指定 collection 的所有元素,则返回 true。

booleanequals(Object o)

比较指定对象与此 set 的相等性。

inthashCode()

返回 set 的哈希码值。

booleanisEmpty()

如果 set 不包含元素,则返回 true。

Iterator<E> iterator()

返回在此 set 中的元素上进行迭代的迭代器。

booleanremove(Object o)

如果 set 中存在指定的元素,则将其移除(可选 *** 作)。

booleanremoveAll(Collection<?>c)

移除 set 中那些包含在指定 collection 中的元素(可选 *** 作)。

booleanretainAll(Collection<?>c)

仅保留 set 中那些包含在指定 collection 中的元素(可选 *** 作)。

intsize()

返回 set 中的元素数(其容量)。

Object[]toArray()

返回一个包含 set 中所有元素的数组。

<T>T[]toArray(T[] a)

返回一个包含此 set 中所有元素的数组;返回数组的运行时类型是指定数组的类型。

arr1和arr2是数组,arr1和arr2存放的是你这两个数组的内存地址,直接放入set是无法自动去重的,因为他们的内存地址不一样

如果他们的长度一样,还是手动去重吧

方法:

遍历set,挨个比较要被放入的数组,若已存在,则不放入


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11660066.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存