栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java中集合的遍历方式总结(List、Set、Map、Queue、Deque、Stack)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java中集合的遍历方式总结(List、Set、Map、Queue、Deque、Stack)


前言

不同集合的遍历方式也有差异,本文将对六种集合的遍历方式进行总结。


一、六种集合

         1,List

         2,Set

         3,   Map

         4,   Queue

         5,   Deque

         6,   Stack

二、遍历方式 1.List

                List是一种有序列表,允许内部元素重复,可以插入多个null值。(在需要增删元素时,应用更多的是ArrayList.)

       方法一: for循环      

​
​
​
  for(int i=0;i 

        方法二:for ... each循环

for(String s:list){
			System.out.println(s);
		}

        方法三:Iterator迭代器

Iterator 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 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 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)。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/880421.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号