编程语言
首页 > 编程语言> > Java实验 Map排序

Java实验 Map排序

作者:互联网

题目要求

使用双列集合Map框架存储湘潭2020年各月份和对应AQI值,按月份分别从高到低、从低到高遍历输出各月份和对应AQI值。

代码

package test4;

import java.util.Collections;
import java.util.HashMap;
import java.util.Set;
import java.util.ArrayList;
import java.util.Arrays;

public class test4 {
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		HashMap<Integer,Integer> dict = new HashMap<Integer,Integer>();
		int[] AQI = {80,59,54,76,68,42,49,59,51,72,72,123};
		for(int i=0;i<12;i++) {
			dict.put(i+1, AQI[i]);
		}
		//将月份和数值对应起来
		Set<Integer> set = dict.keySet();
		//将HashMap转化存有键值的Set
		Object[] arr = set.toArray();
		//将Set转化成Arrays(数组)
		ArrayList<Integer> list = new ArrayList(Arrays.asList(arr));
		//把数组转化成list
		System.out.println("按照月份从低到高排:");
		for(int i:list) {
			System.out.println(i+"="+dict.get(i));
		}
		Collections.reverse(list);
		System.out.println("按照月份从高到低排:");
		for(int i:list) {
			System.out.println(i+"="+dict.get(i));
		}
	}
}

其实里面有些操作是多余的,懒得改了^~^

运行结果

按照月份从低到高排:
1=80
2=59
3=54
4=76
5=68
6=42
7=49
8=59
9=51
10=72
11=72
12=123
按照月份从高到低排:
12=123
11=72
10=72
9=51
8=59
7=49
6=42
5=68
4=76
3=54
2=59
1=80

个人代码,如有错误,欢迎指正

标签:Map,Java,java,list,util,72,import,59,排序
来源: https://www.cnblogs.com/Atsuhiro/p/16294123.html