s-day03--HashSet特点以及遍历
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
package com.inmind.set02;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
|
||||
/*
|
||||
HashSet特点以及遍历
|
||||
HashSet接口的特点:
|
||||
1.存取无序(怎么存不一定怎么取)
|
||||
2.没有索引
|
||||
3.不能重复
|
||||
|
||||
HashSet底层数据结构是哈希表(数组+双向链表+红黑树),就是一个HashMap
|
||||
*/
|
||||
public class HashSetDemo06 {
|
||||
public static void main(String[] args) {
|
||||
HashSet<String> sets = new HashSet<>();
|
||||
sets.add("张飞");
|
||||
sets.add("关羽");
|
||||
sets.add("刘备");
|
||||
sets.add("张飞");
|
||||
System.out.println(sets);
|
||||
|
||||
//set集合的遍历,没有素引的,所以普通for循环不能实现遍历
|
||||
//迭代器遍历
|
||||
Iterator<String> iterator = sets.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
System.out.println(iterator.next());
|
||||
}
|
||||
//增强for循环遍历:语法糖--本质就是迭代器
|
||||
for (String s : sets) {
|
||||
System.out.println(s);
|
||||
}
|
||||
//借用set集合来实现去重,转为数组
|
||||
Object[] array = sets.toArray();
|
||||
System.out.println(Arrays.toString(array));
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user