編程題目:
10.(Map)在原有世界盃Map的基礎上,增加如下功能:
讀入一支球隊的名字,輸出該球隊奪冠的年份列表。
例如,讀入“巴西”,應當輸出 1958 1962 1970 1994 2002,讀入“中國”,應當輸出沒有獲得過世界盃。
示例代碼:
package program.collection.exercise10;
import java.util.*;
/**
* 10.(Map)在原有世界盃Map的基礎上,增加如下功能:
* 讀入一支球隊的名字,輸出該球隊奪冠的年份列表。
* 例如,讀入“巴西”,應當輸出1958 1962 1970 1994 2002;
* 讀入“中國”,應當輸出沒有獲得過世界盃。
*/
public class WorldCupMap {
public static void main(String[]args) {
System.out.println("請輸入一個國家:");
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);
String nation = scanner.next();
//判斷輸入國家
judgeCountry(nation);
}
//判斷輸入國家
private static void judgeCountry(String nation) {
Map <String,String> map = new HashMap<String,String>();
map.put("1930","烏拉圭");
map.put("1934","意大利");
map.put("1938","意大利");
map.put("1950","烏拉圭");
map.put("1954","德國");
map.put("1958","巴西");
map.put("1962","巴西");
map.put("1966","英格蘭");
map.put("1970","巴西");
map.put("1974","德國");
map.put("1978","阿根廷");
map.put("1982","意大利");
map.put("1986","阿根廷");
map.put("1990","德國");
map.put("1994","巴西");
map.put("1998","法國");
map.put("2002","巴西");
map.put("2006","意大利");
boolean exit = false; //定義輸入國家是否舉辦世界盃
Iterator<String> iterator = map.keySet().iterator();
while(iterator.hasNext()){
String key = (String)iterator.next();
//若存在輸入國家,則輸出該國家獲得世界盃冠軍的年份
if(map.get(key).equals(nation)){
exit = true;
System.out.print(key+"\t");
}
}
//若不存在輸入國家,則輸出該國家沒有舉辦過世界盃
if(exit == false){
System.out.println(nation+"沒有舉辦過世界盃!");
}
}
}
結果顯示: