map集合用于存储信息(映射关系)

这就是一个存储信息的练习,用到了map集合,关系是:总体->班级->学生


package collection;
import java.util.*;
import java.util.Set;

public class MapDemo {
    public static void main(String[] args)
    {
        MapCeshi md=new MapCeshi();
        md.show();
        md.get();
        md.judge();
        md.quchu();

        System.out.println("接下来是主里面的函数调用");
        demo();

    }


    public static void demo()
    {
        //这是一个扩展知识,map集合被使用是因为它具备映射关系
        //这个就是映射关系的练习
        HashMap<String,List<Student>> StudentYingShe=
                new HashMap<String,List<Student>>();
        ArrayList<Student> guanxin01=new ArrayList<Student>();
        ArrayList<Student> guanxin02=new ArrayList<Student>();
        guanxin01.add(new Student("xiaoming",10));
        guanxin01.add(new Student("zhanghua",20));
        guanxin01.add(new Student("taitai",16));
        guanxin01.add(new Student("zhenzidan",20));
        guanxin02.add(new Student("wanghuasen",10));
        guanxin02.add(new Student("zhaojiecheng",16));
        guanxin02.add(new Student("liurui",13));
        guanxin02.add(new Student("shenshuang",11));
        guanxin02.add(new Student("duanfeifei",10));
        guanxin02.add(new Student("dayday",9));
        StudentYingShe.put("一班",guanxin01);
        StudentYingShe.put("二班",guanxin02);
        push(StudentYingShe);





    }
    //接下来是输出
    public static void push(HashMap<String,List<Student>> hm)
    {
        Set<Map.Entry<String,List<Student>>> info=hm.entrySet();
        Iterator<Map.Entry<String,List<Student>>> it=info.iterator();

        while(it.hasNext())
        {
            Map.Entry<String,List<Student>> map=it.next();
            String banji=map.getKey();
            System.out.println("班级"+banji);
            List<Student> xuesheng=map.getValue();
            showStudent(xuesheng);
        }
    }
    public static void showStudent(List<Student> ls)
    {
        Iterator<Student> it=ls.iterator();
        while(it.hasNext())
        {
            Student st=it.next();
            System.out.println("学生"+st.getName()+"年龄"+st.getAge());
        }
    }

}

class MapCeshi
{
    HashMap<String,String> hm;
    MapCeshi()
    {
        System.out.println("这里是构造函数");
        hm=new HashMap<String,String>();
        //添加相同的键的时候原来的值会被覆盖,用put 方法可以返回原来的被覆盖的值
        System.out.println(hm.put("01","wanghuasen"));
        System.out.println(hm.put("02","wanghuasen"));
        System.out.println(hm.put("03","wanghuasen"));
        System.out.println(hm.put("01","zhangsan"));
        System.out.println(hm.put("03","lisi  ".trim()));
        System.out.println(hm.put("04","sheag"));
        System.out.println(hm.put("05","wpang"));
        System.out.println(hm.put("06","wang"));
        System.out.println(hm.put("07","gaung "));


    }
    public void judge()
    {
        System.out.println("这里是删除一个");
        System.out.println(hm.remove("07"));
        System.out.println(hm.remove("10"));
    }
    public void show()
    {
        System.out.println("这里是展示");
        System.out.println("直接输出"+hm.toString());

    }
    public void get()
    {
        System.out.println("这里是获取一些");
        System.out.println("得到长度"+hm.size());
        System.out.println("得到第一个值"+hm.get("01"));
        Collection<String> ar=hm.values();
        System.out.println("得到all"+ar);

    }

    public void quchu()
    {
        //这里是获取map集合的方法
        Set<Map.Entry<String,String>> mapCollect= hm.entrySet();
        Iterator<Map.Entry<String,String>> it=mapCollect.iterator();
        while(it.hasNext())
        {
            Map.Entry<String,String> info=it.next();
            System.out.println("键值对"+info.getKey()+"......"+info.getValue());
        }
    }


}

能够用于存储和遍历班级集合中的信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值