Java练习题_Map 利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。

Posted 忧莉馨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java练习题_Map 利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。相关的知识,希望对你有一定的参考价值。

从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。


历届世界杯冠军
届数 举办年份 举办地点 冠军
第一届 1930年 乌拉圭 乌拉圭
第二届 1934年 意大利 意大利
第三届 1938年 法国 意大利
第四届 1950年 巴西 乌拉圭
第五届 1954年 瑞士 西德
第六届 1958年 瑞典 巴西
第七届 1962年 智利 巴西
第八届 1966年 英格兰 英格兰
第九届 1970年 墨西哥 巴西
第十届 1974年 前西德 西德
第十一届 1978年 阿根廷 阿根廷
第十二届 1982年 西班牙 意大利
第十三届 1986年 墨西哥 阿根廷
第十四届 1990年 意大利 西德
第十五届 1994年 美国 巴西
第十六届 1998年 法国 法国
第十七届 2002年 韩日 巴西
第十八届 2006年 德国 意大利
第十九届 2010年 南非 西班牙
第二十届 2014年 巴西 德国

 

在原有世界杯Map 的基础上,
增加如下功能:
读入一支球队的名字或输入年份

得到球队的夺冠年份列表或夺冠的球队


例如,读入“巴西”,
应当输出 1958 1962 1970 1994 2002
读入“荷兰”,
应当输出未找到相关信息

一次性判断完就完事了...

看网上好多版本好不爽...

 1 import java.util.Collection;
 2 import java.util.HashMap;
 3 import java.util.Map;
 4 import java.util.Map.Entry;
 5 import java.util.Scanner;
 6 
 7 public class TestDay19_3 {
 8 
 9     public static void main(String[] args) {
10         HashMap<String, String> hm = new HashMap<>();
11 
12         hm.put("1930", "乌拉圭");
13         hm.put("1934", "意大利");
14         hm.put("1938", "意大利");
15         hm.put("1950", "乌拉圭");
16         hm.put("1954", "西德");
17         hm.put("1958", "巴西");
18         hm.put("1962", "巴西");
19         hm.put("1966", "英格兰");
20         hm.put("1970", "巴西");
21         hm.put("1974", "西得");
22         hm.put("1978", "阿根廷");
23         hm.put("1982", "意大利");
24         hm.put("1986", "阿根廷");
25         hm.put("1990", "西得");
26         hm.put("1994", "巴西");
27         hm.put("1998", "法国");
28         hm.put("2002", "巴西");
29         hm.put("2006", "意大利");
30         hm.put("2010", "西班牙");
31         hm.put("2014", "德国");
32 
33         // 键盘录入值
34         @SuppressWarnings("resource")
35         Scanner sc = new Scanner(System.in);
36         System.out.println("请输入队名或年份");
37         String s = sc.nextLine();
38 
39         Collection<Map.Entry<String, String>> c = hm.entrySet();
40         // 设置获奖标记
41         boolean flag = false;
42         // 遍历集合信息
43         for (Entry<String, String> entry : c) {// 判断是否等于年份
44             if (entry.getKey().equals(s)) {
45                 System.out.println(s + "年获胜的是:" + entry.getValue());
46                 flag = true;
47                 break;
48             } else if (entry.getValue().equals(s)) {// 判断是否等于国家名
49                 // System.out.println(s + "队在" + entry.getKey() + "年夺冠");
50                 System.out.print(entry.getKey() + " ");
51                 flag = true;
52             }
53         }
54         // 如果获奖了就不输出这句话
55         if (!flag) {
56             System.out.println("未找到相关信息");
57         }
58 
59     }
60 }

 

以上是关于Java练习题_Map 利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。的主要内容,如果未能解决你的问题,请参考以下文章

利用Map,完成下面的功能:

Java-集合练习题1

Java练习题_Map 统计一段文章中每个(或指定)单词出现的次数,

java中,下面的List怎么放入map里面,求高手!

利用postman完成JSON串的发送功能(springboot)

高阶函数 map/reduce页面习题