首页 > 编程知识 正文

Java中遍历Set集合的三种方法

时间:2023-05-05 15:51:57 阅读:179338 作者:3

Map集合:链接: Map集合的五种遍历方法和Treemap方法

Set集合:链接用: Java遍历Set集合的三种方法

TreeSet集合:链接: Java以了解如何遍历TreeSet和迭代器

列表集合:链接: Java列表集合的三种遍历方法(全网最详细) )。

集合差异:链接: java中list、set、map集合的差异和面试要点

1 .迭代遍历:

Set set=new HashSet (;

Iterator it=set.iterator (;

while(it.Hasnext ) ) ) )。

String str=it.next (;

system.out.println(str;

() ) ) ) )。

2.for循环遍历:

for (stringstr 3360集) {

system.out.println(str;

() ) ) ) )。

如果set中存储了Object,则通用性也有好处

Set set=new HashSet (;

for循环遍历:

对象:集(for ) {

对象接口(if ) {

intaa=(integer ) obj;

}elseif(objinstanceofstring ) )

stringaa=(string ) obj

() ) ) ) )。

……

() ) ) ) )。

1 Set收藏介绍

Collection接口可以同时存储重复元素和非重复元素。 List可以存储重复的要素,Set是不重复的要素。

通过元素的equals方法确定是否为重复元素。

Set集合取出要素的方法可以采用迭代器,强化for

2散列(哈希表) ) ) )。

该类实现了Set接口,并由哈希表(实际上是HashMap实例)支持。 这并不能保证set的迭代顺序,特别是不能保证这个顺序是永久不变的。 此类可以使用空元素。

特点:无序集合、保存和取出顺序不同,无索引,不保存重复元素。 代码的编写与ArrayList完全一致。

HashSet的特征:

基础数据结构:散列表(链表和数组的结合体);

存储器取出得很快

线程不安全,运行速度快

3对象散列值

如果父类未被重写,则每次执行时结果都将是不同的整数。

如果子类重写父类的方法、散列值和定制;

保存在HashSet中的依据;

4个字符串的哈希值

String类继承了Object,并重写了父类的方法hashCode。

5散列表的保存过程

publicstaticvoidmain (string [ ] args ) hashsetstringset=newhashsetstring ); set.add(newstring ) ' ABC ' ); set.add(newstring ) ' ABC ' ); set.add(newstring ) ' ABC ' ); set.add(newstring ) ' BBC ' ); set.add(newstring ) ' BBC ' ); system.out.println(set ); () ) ) ) )。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。