前言
不同集合的遍历方式也有差异,本文将对六种集合的遍历方式进行总结。
一、六种集合
1,List
2,Set
3, Map
4, Queue
5, Deque
6, Stack
二、遍历方式
1.List
List是一种有序列表,允许内部元素重复,可以插入多个null值。(在需要增删元素时,应用更多的是ArrayList.)
方法一: for循环
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
方法二:for ... each循环
for(String s:list){
System.out.println(s);
}
方法三:Iterator迭代器
Iterator<String> iterator =list.iterator();
while (iterator.hasNext()){
String m = iterator.next();
System.out.println(m);
}
2.Set
Set用于存储不重复的元素集合,无序(实现类有HashSet、TreeSet、LinkedHashSet)
方法一:for each循环
for(String s:set1){
System.out.println(s);
}
方法二:iterator迭代器
Iterator<String> iterator =list.iterator();
while (iterator.hasNext()){
String m = iterator.next();
System.out.println(m);
}
3.Map
Map是一种映射表,可以通过key查找value(最常用的一种Map实现是HashMap,无序,且key值唯一)。
方法一:for each遍历Map的Key
for (String key : map.keySet()) {
Integer value = map.get(key);
System.out.println(key + " - " + value);
}
方法二:for each遍历可以和value
for (Map.Entry<String, Integer> entry : map.entrySet()) {
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key + " - " + value);
}
4.Queue队列
1. queue是一种经常使用的集合,遵循先入先出的基本原则(FIFO)
2.一般地,只允许前端删除,后端插入
3. 无限队列:常见实现类LinkedList
4. 有限队列:ArrayBlockingQueue(长度大小受限制)
方法一:for each遍历
for(String s : queue) {
System.out.println(s);
}
方法二:iterator迭代器
Iterator it = queue.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
方法三:while循环
while(!queue1.isEmpty()) {
System.out.println(queue1.poll());
}
5,Deque双端队列
deque队列只能一端进队,在另一端出队(FIFO)
双端队列:允许两头都进,两头都出(Double Ended Queue),Deque.
方法一:while循环遍历同时进行出队操作
String item = "";
while((item = deque.pollLast()) != null) {
System.out.println(item);
}
方法二:for each遍历(仅从队头开始)
for(String s:deque){
System.out.println(s);
}
方法三:Iterator迭代器
Iterator it = deque.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
6,Stack栈
遵循后进先出原则(LIFO)
方法一:for each循环
for(String s : stack) {
System.out.println(s);
}
方法二:while循环
while (!stack.isEmpty()) {
System.out.println(stack.pop());
}
方法三:Iterator迭代器遍历
Iterator it = stack.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
总结
以上就是本文的全部内容,简单介绍了六种集合的便利方式。
1, List是一种有序列表,允许内部元素重复,可以插入多个null值。
2, Set用于存储不重复的元素集合,无序。
3, Map是一种映射表,可以通过key查找value。
4, Queue是一种经常使用的集合,遵循先入先出的基本原则(FIFO)。一般地,只允许前端删除,后端插入。
5,Deque遵循(FIFO),queue的双端队列:允许两头都进,两头都出。
6,Stack栈 遵循后进先出原则(LIFO)。