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