HashMap集合排序方法
首先我们先来看看Map集合获取元素的三种常见方法(1)entrySet(),(2)keySet(),(3)values()
1. entrySet():(1)先返回map集合的所有"映射"的Set集合,这里规范每个"映射"的类型为Map.Entry<K, V>
(2)再通过迭代取出所有的“映射”,再利用getKey()、getValue()方法获取相应键、值。
import java.util.*; public class Main{
public static void main(String[] args){
Map<String, String> map = new HashMap<String, String>(); //构建键值对为<String, String>的Map集合
map.put("a", "aaa");
map.put("b", "bbb");
map.put("c", "ccc"); Set<Map.Entry<String, String>> entrySet = map.entrySet(); //先得到map集合的所有"映射"的Set集合,这里规范每个映射的类型为Map.Entry<K, V>
Iterator<Map.Entry<String, String>> iter = entrySet.iterator(); //再得到entrySet集合的迭代器,Map.Entry<K, V>为迭代元素的类型
while(iter.hasNext()){
Map.Entry<String, String> item = iter.next();
String key = item.getKey();
String value = item.getValue();
System.out.println("key:" + key + "-->value:" + value);
}
/*
for(Map.Entry<String, String> item: entrySet){
String key = item.getKey();
String value = item.getValue();
System.out.println("key:" + key + "-->value:" + value);
}
*/
}
} 运行结果
key:b-->value:bbb
key:c-->value:ccc
key:a-->value:aaa
2. keySet():(1)第一步、先返回map集合的所有键的Set集合
(2)第二步、再通过迭代取出所有key,再利用get()方法获取value, for(类型 元素: 集合) 的本质是获取集合的迭代器进行迭代
import java.util.*; public class Main{
public static void main(String[] args){
Map<String, String> map = new HashMap<String, String>(); //构建键值对为<String, String>的Map集合
map.put("a", "aaa");
map.put("b", "bbb");
map.put("c", "ccc"); Set<String> keySet = map.keySet(); //先获取map集合的所有键的Set集合
Iterator<String> iter = keySet.iterator(); //再得到keySet集合的迭代器
while(iter.hasNext()){
String key = iter.next();
String value = map.get(key);
System.out.println("key:" + key + "-->value:" + value);
}
/*
for(String key: keySet){
String value = map.get(key);
System.out.println("key:" + key + "-->value:" + value);
}
*/
}
} 运行结果
key:b-->value:bbb
key:c-->value:ccc
key:a-->value:aaa
```
3. values():返回map集合的所有value的Collection集合(在集合中无序存放)
import java.util.*; public class Main{``
public static void main(String[] args){
Map<String, String> map = new HashMap<String, String>(); //先构造键值对为<String, String>的Map集合
map.put("a", "aaa");
map.put("b", "bbb");
map.put("c", "ccc"); Collection<String> collection = map.values(); //再得到map集合的所有value的Collection集合
System.out.println(collection);
}
} // 运行结果
// [bbb, ccc, aaa]
欢迎大家浏览,也希望对各位能有所帮助。
HashMap集合排序方法的更多相关文章
- HashMap集合-遍历方法
# HashMap集合-遍历方法 先定义好集合: public static void main(String[] args) { Map<String,String> onemap=ne ...
- 通过写一个Demo展示C#中多种常用的集合排序方法
不多说,程序很简单,就是将集合中的数据进行排序,但使用到的知识点还是比较多的,大牛勿喷,谨献给初学者!直接上程序吧! namespace Demo { /// <summary> /// ...
- Java集合排序方法comparable和comparator的总结
一.概述Comparable和Comparator都是用来实现集合中元素的比较.排序的.Comparable是在集合内部定义的方法实现的排序,位于java.lang下.Comparator是在集合外部 ...
- Java零基础手把手系列:HashMap排序方法一网打尽
HashMap的排序在一开始学习Java的时候,比较容易晕,今天总结了一些常见的方法,一网打尽.HashMap的排序入门,看这篇文章就够了. 1. 概述 本文排序HashMap的键(key)和值(va ...
- Collections -集合排序compareTo方法重写,shuffle,addall
package cn.learn.collection.Collections; /* 排序的对象的类,实现comparable借口,重写compareto方法 若要打印必须重写toString方法, ...
- 关于自定义 List集合排序的方法!
大致流程: 排序是用到排序的接口Comparator<T>你要先建一个类实现比较器Comparator //大致流程public class StuComp implements Comp ...
- HashMap按键排序和按值排序
对map集合进行排序 今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序. 一.简单 ...
- 【Java进阶】---map集合排序
map集合排序 这篇文章讲的不仅仅是map排序,比如把对象按某一属性排序,它都可以解决这些问题. 比如,有N个对象,每个对象有个属性就是成绩,成绩分:优秀,良好,合格.那我们如何按 ...
- Java集合排序及java集合类详解--(Collection, List, Set, Map)
1 集合框架 1.1 集合框架概述 1.1.1 容器简介 到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些对象以后,我们就可以利用它们来做一 ...
随机推荐
- js批量下载文件
关于兼容性问题: <a href="xxx.docx" target='_blank'></a> 下载文件时,这种写法是没有兼容性问题:但是下载图 ...
- Codeforces 1220 E Tourism
题面 可以发现一个边双必然是可以随意走的,所以我们就把原图求割边然后把边双缩成一个点,然后就是一个树上dp了. #include<bits/stdc++.h> #define ll lon ...
- Linux之信号
产生信号五种方法: 按键产生:ctrl+c.ctrl+z.ctrl+\ 系统调用产生:如kill.raise.baort 软件条件产生:如定时器alarm 硬件异常产生:非法访问内存(段错误).除0( ...
- getFieldDecorator用法(二)——封装表单模块
后台管理系统经常用到表单查询,因此做了个封装 myorder.js import React from 'react'; import { Card, Button, Table, Form, Sel ...
- Python 自学笔记(三)
1.列表 1-1.什么是列表 列表的代码格式:teacher=['张三','李四','王五'] 这里的['张三','李四','王五'] 就是一个列表,一个列表需要用中括号[ ]把里面的各种数据框起来, ...
- RGBD-SLAM(一)——深度摄像机
一.根据其工作原理主要分为三类: 1. 双目方案: (1) 原理: http://blog.csdn.net/shenziheng1/article/details/52883536 (2)产品: Z ...
- Flask实现跨域请求的处理方法
https://blog.csdn.net/wangshu_liang/article/details/86490137 https://blog.csdn.net/a1241314660/artic ...
- PostgreSQL 之 CREATE FUNCTION
官方文档 语法: CREATE [ OR REPLACE ] FUNCTION name ( [ [ argmode ] [ argname ] argtype [ { DEFAULT | = } d ...
- Java NIO学习笔记八 DatagramChannel
Java NIO DatagramChannel Java NIO DatagramChannel是可以发送和接收UDP数据包的通道.由于UDP是一种无连接网络协议,因此您不能默认读取和写入Datag ...
- 动手生成 Delphi xe DBTreeview 三级行政图树 省市县
表结构及记录 object tarea: TFDQuery Connection = FDConnection1 SQL.Strings = ( 'select *' ...