集合遍历

集合遍历

经常会用到集合的遍历,但是还是记不住常用的遍历方法,每次都得到处去找,现在索性就都找好了放在博客里面,方便以后查阅的同时也顺带着水一篇博客。

一、map遍历

方法一:

System.out.println("通过Map.keySet遍历key和value:");
for (String key : map.keySet()) {
   System.out.println("key= "+ key + " and value= " + map.get(key));
 }

方法二:

System.out.println("通过Map.entrySet使用iterator遍历key和value:");
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
   Map.Entry<String, String> entry = it.next();
   System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
  }

方法三:

System.out.println("通过Map.entrySet遍历key和value");
for (Map.Entry<String, String> entry : map.entrySet()) {
   System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
  }

方法四:

System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
for (String v : map.values()) {
   System.out.println("value= " + v);
  }

  

二、set遍历

方法一:

Set<String> set = new HashSet<String>();
Iterator<String> it = set.iterator();
while (it.hasNext()) {
  String str = it.next();
  System.out.println(str);
}

方法二:

for (String str : set) {
      System.out.println(str);
}

方法三:

Set<Object> set = new HashSet<Object>();

for (Object obj: set) {
      if(obj instanceof Integer){
                int aa= (Integer)obj;
             }else if(obj instanceof String){
               String aa = (String)obj
             }
    System.out.println(aa);
} 

  

 

三、map按照value值排序

public static HashMap sortByValue(HashMap<String, Integer> map) {//desc  
	List list = new LinkedList(map.entrySet());  
	Collections.sort(list, new Comparator(){  
	       public int compare(Object o1, Object o2) {  
	                 return ((Comparable) ((Map.Entry)o2).getValue())  
	                    .compareTo(((Map.Entry)o1).getValue());  
	       }  
     });  
	 LinkedHashMap result = new LinkedHashMap();  
	  
	 for (Iterator it = list.iterator(); it.hasNext();) {  
	      Map.Entry entry = (Map .Entry) it.next();  
	      result.put(entry.getKey(), entry.getValue());  
	  }  
	  return result;  
	}  

  

  

转载于:https://www.cnblogs.com/zidiancao/p/3948750.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109742.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • idea 替换_idea全局搜索快捷键

    idea 替换_idea全局搜索快捷键idea替换功能说明快捷键:ctrl+R界面说明

  • vb教程编程实例详解pdf_vb程序设计教程第五版答案

    vb教程编程实例详解pdf_vb程序设计教程第五版答案实验8-5编写一个能将任意两个文件的内容合并的程序,程序界面由读者由自由设计。解题,在窗体建立一个按钮控件,假定C盘已经有两个要合并的文件text1.dat和text2.dat,代码如下:PrivateSubCommand1_Click()DimcharAsByteOpen”C:\text1.dat”ForBinaryAs#1Open”…

  • vb连接Access数据库自定义

    PubliccnAsNewADODB.ConnectionPublicrsAsNewADODB.Recordset打开数据库连接PublicSubOpenConn()   Setcn=NewADODB.Connection   Setrs=NewADODB.Recordset   cn.CursorLocation=adUseClient   

  • QQ 第三方登录

    QQ 第三方登录

    2021年10月25日
  • MySQL与SqlServer的区别「建议收藏」

    MySQL与SqlServer的区别「建议收藏」一、MySQL与SqlServer的区别目前最流行的两种后台数据库即为Mysql和SQLServer。这两者最基本的相似之处在于数据存储和属于查询系统,你可以使用SQL来访问这两种数据库的数据,因为它们都支持ANSI-SQL(数据库管理标准)。还有,这两种数据库系统都支持二进制关键字和关键索引,这就大大地加快了查询速度。同时,二者也都提供支持XML的各种格式。根本的区别:SQL服务器的狭隘的、保守的存储引擎而MySQL服务器的可扩展、开放的存储引擎;SQL服务器的引擎是Sybase,而MyS

  • nginx负载均衡并发量(应用服务器高并发解决方案)

    1.什么是负载均衡?当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能。那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台服务器的负载情况将请求分配给某一台后端服务器去处理。那么在这个过程中,调度者如何合理分配任务,保证所有后端服务器都将性能充分发挥,从而保持服务器集群的整体性能最优,这就是负载均衡问题。下…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号