Java-集合练习题1

第一题 (Map)利用Map,完成下面的功能:

从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。如果该 年没有举办世界杯,则输出:没有举办世界杯。

附:世界杯冠军以及对应的夺冠年份,请参考本章附录。 附录

  1. 历届世界杯冠军

届数


举办年份


举办地点


冠军


第一届


1930年


乌拉圭


乌拉圭


第二届


1934年


意大利


意大利


第三届


1938年


法国


意大利


第四届


1950年


巴西


乌拉圭


第五届


1954年


瑞士


西德


第六届


1958年


瑞典


巴西


第七届


1962年


智利


巴西


第八届


1966年


英格兰


英格兰


第九届


1970年


墨西哥


巴西


第十届


1974年


前西德


西德


第十一届


1978年


阿根廷


阿根廷


第十二届


1982年


西班牙


意大利


第十三届


1986年


墨西哥


阿根廷


第十四届


1990年


意大利


西德


第十五届


1994年


美国


巴西


第十六届


1998年


法国


法国


第十七届


2002年


韩日


巴西


第十八届


2006年


德国


意大利


第十九届


2010年


南非


西班牙


第二十届


2014年


巴西


德国

(Map)在原有世界杯Map 的基础上,增加如下功能: 读入一支球队的名字,输出该球队夺冠的年份列表。 例如,读入“巴西”,应当输出 1958 1962 1970 1994 2002 读入“荷兰”,应当输出 没有获得过世界杯

package com.jihelianxi;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class TestSjb {

    public static void main(String[] args) {
        Map<String,String> ma=new HashMap<>();
        ma.put("1930","乌拉圭" );
        ma.put("1934","意大利" );
        ma.put("1938","意大利" );
        ma.put("1950","乌拉圭" );
        ma.put("1954","西德" );
        ma.put("1958","巴西" );
        ma.put("1962","巴西" );
        ma.put("1966","英格兰" );
        ma.put("1970","巴西" );
        ma.put("1934","西德" );
        Scanner sc=new Scanner(System.in);
        System.out.println("输入年份:");
        String st=sc.nextLine();
        if(ma.containsKey(st)==true)
        {

            System.out.println(st+"得冠国家是:"+ma.get(st));

        }
        else
        {
            System.out.println(st+"没举办世界杯");
        }

        Scanner sc1 = new Scanner(System.in);
        System.out.println("请输入夺冠球队");
        String str1 = sc1.nextLine();
        if(ma.containsValue(str1)==false)
        {
            System.out.println(str1+"队没有获得过冠军");
        }
        else
        {
            System.out.println(str1+"队的夺冠年份是:");
            for(String str :ma.keySet())
            {
                if(ma.get(str).equals(str1))
                {
                    System.out.print(str+" ");
                    }
            }

        }

        //遍历keySet集合 获取value
//        for(String st:ma.keySet())
//        {
//            String b=ma.get(st);
//        }
//
//        System.out.println("输入国家名字:");
//        String str=sc.nextLine();
//        for(int i=0;i<ma.size();i++)
//        {
//            if(b.equals(str))
//            {
//                System.out.println(st);
//            }
//            else
//            {
//                System.out.println("没有获得过世界杯");
//            }
//        }

    }

}
时间: 2024-07-30 10:18:52

Java-集合练习题1的相关文章

java 集合练习题2

分别向Set集合以及List集合中添加“A”.“a”.“c”.“C”.“a”五个元素,观察重复值“a”能否在List集合以及Set集合中成功添加. package com.hanqi.jihe; import java.util.*; public class Test3 { public static void main(String[] args) { // TODO 自动生成的方法存根 System.out.println("list"); List<String>

java 集合练习题3

创建Map集合,创建Emp对象,并将创建的Emp对象田间道集合中(Emp对象中的id作为Map集合的键),并将id为005的对象从集合中移除. package com.hanqi.jihe; public class Emp { private String e_id; private String e_name; public Emp(String e_id,String e_name) { this.e_id=e_id; this.e_name=e_name; } public String

Java集合练习题List插入1-100

package 练习1到100; import java.util.*; public class Test { public static void main(String[] args) { List <Integer> ls=new ArrayList<Integer>(); for(int i=1;i<=100;i++) { ls.add(i); } ls.remove(10); for(int k:ls) { System.out.print(k+" &q

java集合框架22

思想:在面向对象的思想里,一种数据结构被认为是一种容器.在本质上来讲是一个类,提供方法支持查找,插入和删除等等操作. Java集合框架支持以下俩种类型的容器: 存储一个元素集合,简称为集合Collection 存储键值对,称为图Map 集合collection 三种主要类型 : 规则集(set) , 线型表(List) , 队列(Queue) set: 存储一组不重复的数据 List: 存储由元素构成的有序集合 Queue: 存储先进先出方式处理的对象 细说Collection接口: 它是处理对

Java—集合框架List

集合的概念 现实生活中:很多的事物凑在一起 数学中的集合:具有共同属性的事物的总和 Java中的集合类:是一种工具类,就像是容器,存储任意数量的具有共同属性的对象 集合的作用 在类的内部,对数据进行组织(针对作用与意义一样的属性,将他们放到一个集合中) 简单而快速的搜索大数量的条目 有的集合接口,提供了一系列排列有序的元素,并且可以在序列中快速的插入或删除有关元素 有的集合接口,提供了映射关系,可以通过关键字(key)去快速查找到对应的唯一对象,而这个关键字可以是任意类型 与数组相比 数组的长度

Java 集合

在Java Collections Framework中,不同类型的集合使用不同类型的数据结构以不同的方式存储它们的元素. 集合框架提供了遍历集合的以下方法: 使用迭代器 使用for-each循环 使用forEach()方法 使用迭代器 迭代器可以对集合执行以下三个操作: 检查是否有尚未访问的元素. hasNext() 检查是否有下一个访问的元素. next() 删除集合的最后访问元素. remove() 例子1 使用迭代器打印列表的所有元素: import java.util.ArrayLis

《深入理解Java集合框架》系列文章

Introduction 关于C++标准模板库(Standard Template Library, STL)的书籍和资料有很多,关于Java集合框架(Java Collections Framework, JCF)的资料却很少,甚至很难找到一本专门介绍它的书籍,这给Java学习者们带来不小的麻烦.我深深的不解其中的原因.虽然JCF设计参考了STL,但其定位不是Java版的STL,而是要实现一个精简紧凑的容器框架,对STL的介绍自然不能替代对JCF的介绍. 本系列文章主要从数据结构和算法层面分析

Java集合相关面试问题和答案

Java集合相关面试问题和答案 面试试题 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector.Stack.HashTable和Array.随着集合的广泛使用,Java1.2提出了囊括所有集合接口.实现和算法的集合框架.在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久.它还包括在Java并发包中,阻塞接口以及它们的实现.集合框架的部分优点如下: (1)使用核心集合类降低开发成本,而非实现我们自己的集合类.

Java集合

JAVA集合小结   有序否 允许元素重复否 Collection 否 是 List 是 是 Set AbstractSet 否 否 HashSet TreeSet 是(用二叉树排序) Map AbstractMap 否 使用key-value来映射和存储数据,Key必须惟一,value可以重复 HashMap TreeMap 是(用二叉树排序) 几个面试常见问题:1.Q:ArrayList和Vector有什么区别?HashMap和HashTable有什么区别?   A:Vector和HashT

一大波Java来袭(五)——Java集合概述

把"Java集合"比作是容器,可以把多个对象(实际:是对象的引用),扔在容器中. JDK1.5之前,被丢进集合中的对象,会丢失起数据类型.默认为Object类型 JDK1.5之后,不会丢失数据类型,因为引入了"泛型"(作为下文重点) 本文将结合数据结构,重点讲述Java的4种集合体系的功能和用法,并给出不同应用场景改如何选择? 一.同样是用于"存储数据",既可以使用"数组",有可以使用"集合",有什么区别吗