首先创建一个map对象,并依次放入几个测试数据

        HashMap<String, Integer> map = new HashMap<String, Integer>();
map.put("One", 1);
map.put("Two", 2);
map.put("Three", 3);

1.遍历

①方法一

        for (HashMap.Entry<String, Integer> entry : map.entrySet()) {
String key = entry.getKey();
Integer val = entry.getValue();
}

②方法二

        for (Iterator<HashMap.Entry<String, Integer>> it = map.entrySet().iterator(); it.hasNext();) {
HashMap.Entry<String, Integer> entry = it.next();
String key = entry.getKey();
Integer val = entry.getValue();
}

2.删除

        for (Iterator<HashMap.Entry<String, Integer>> it = map.entrySet().iterator(); it.hasNext(); ) {
HashMap.Entry<String, Integer> entry = it.next();
//删除key值为Two的数据
if (entry.getKey().equals("Two")) {
it.remove();
}
}

3.排序

        //创建一个用于对yourMap进行排序的list
List<HashMap.Entry<String, Integer>> list = new ArrayList(yourMap.entrySet()); //提供一个匿名的比较函数对象(从大到小进行输出)
Collections.sort(list, new Comparator<HashMap.Entry<String, Integer>>() {
public int compare(HashMap.Entry<String, Integer> o1, HashMap.Entry<String, Integer> o2) {
return o2.getValue() - o1.getValue(); //这里是从大到小进行排序,如果需从小到大进行排序则将o1和o2互换即可
}
}); //按排序输出list中的内容
for (HashMap.Entry<String, Integer> entry : list) {
String key = entry.getKey();
Integer val = entry.getValue();
}

以上。

Java HashMap 遍历、删除、排序的更多相关文章

  1. java集合类遍历删除方法测试以及使用场景记录

    package test0; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java. ...

  2. [Java] HashMap遍历的两种方式

    Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml第一种: Map map = new HashMap( ...

  3. java数组遍历 删除remove

    package com.b; import java.util.ArrayList; //数组遍历删除,添加 public class Core2 { private String name; pri ...

  4. java map遍历、排序,根据value获取key

    Map 四种遍历: Map<String,String> map = new HashMap<String, String>(); map.put("one" ...

  5. Java 循环遍历删除set list中的元素

    删除List和Set中的某些元素 错误代码的写法: Set<String> set = new HashSet<String>(); set.add("aaaaaa& ...

  6. Java HashMap 遍历方式探讨

    JDK8之前,可以使用keySet或者entrySet来遍历HashMap,JDK8中引入了map.foreach来进行遍历. keySet其实是遍历了2次,一次是转为Iterator对象,另一次是从 ...

  7. java集合遍历删除指定元素异常分析总结

    在使用集合的过程中,我们经常会有遍历集合元素,删除指定的元素的需求,而对于这种需求我们往往使用会犯些小错误,导致程序抛异常或者与预期结果不对,本人很早之前就遇到过这个坑,当时没注意总结,结果前段时间又 ...

  8. 对JAVA集合进行遍历删除时务必要用迭代器

    java集合遍历删除的方法: 1.当然这种情况也是容易解决,实现方式就是讲遍历与移除操作分离,即在遍历的过程中,将需要移除的数据存放在另外一个集合当中,遍历结束之后,统一移除. 2.使用Iterato ...

  9. Java HashMap 如何正确遍历并删除元素

    (一)HashMap的遍历 HashMap的遍历主要有两种方式: 第一种采用的是foreach模式,适用于不需要修改HashMap内元素的遍历,只需要获取元素的键/值的情况. HashMap<K ...

随机推荐

  1. python的类和实例化对象

    一切皆对象,类也是对象,类来自于元类type,如果一个类没有声明自己的元类,默认它就是元类. 即类是元类的实例,通过type(类)会显示type,而实例来自于类. 类有两个属性,数据属性和函数属性,下 ...

  2. ORA-30377 MV_CAPABILITIES_TABLE not found

    Cause: You have used the DBMS_MVIEW.EXPLAIN_MVIEW() API before you have defined the MV_CAPABILITIES_ ...

  3. protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 2, class-id=60, method-id=80)

    Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; reason: {#method<channel.c ...

  4. 复选框批量删除操作-jquery方式

    1.首先在页面添加一个批量删除的按钮:<li class="btns"><input id="deleteSubmit" class=&quo ...

  5. 一道cf水题

    题意:输入数字n表示字符串中元素个数,字符串中只含有RGB三个字符,现在要求任意两个相同的字符他们的下标之差能整除3. 思路:任意两个相同的字符的下标能整除3,也就是任意三个为一组的字符串当中的字符不 ...

  6. Hakase and Nano 【思维博弈】

    Hakase and Nano 时间限制: 1 Sec  内存限制: 128 MB 提交: 400  解决: 104 [提交] [状态] [命题人:admin] 题目描述 Hakase and Nan ...

  7. 算法总结(转自CS-Notes)

    转载地址: 注意要点: 1.希尔排序:实际是将元素按步距h分为几组,每组元素没有关系,是组里每个元素跨步距h得到的一组元素是有序的,那么剩下的问题就是组内有序,再处理好组间边界即可.实际解决的方式是不 ...

  8. CentOS 7.3 上安装docker

    Docker,分为社区版CE和企业版EE.社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务. 一.安装docker 1.Docker 要求 CentOS 系统的内核版本高于 3 ...

  9. [echarts] - echarts量化比较图表类型解析

    https://echarts.baidu.com/examples/editor.html?c=watermark <!DOCTYPE html> <!--用作两种货品的参数对比- ...

  10. Docker Builders:Builder pattern vs. Multi-stage builds in Docker

    原文链接 Builder pattern vs. Multi-stage builds in Docker This post looks at two new PRs from the Docker ...