[第三季] 012.Map接口及其实现类

[第三季] 012.Map接口及其实现类
1.获得所有键的集合
①在main中new一个HarshMap,用来存放城市名称所以定义为cities.
个人感觉HarshMap是一个带自定义需要的列表.
②用put方法存入四个变量,北京,上海,天津,重庆.
③用keySet()方法获取cities里面的所有键的集合,放到set里面 zips里面.
④用迭代器装入zips里面的String,放到it里面.
注意:zips是cities返回的set,set是可以iterator的,map是不可以的.
⑤while循环打印
先用String zip存放it.next().
在用cities.get(zip)方法取出,String cityName.
最后用zip+cityName的方法打印出来.
2.获得所有值的集合
System.out.println(“===========打印所有区号的名称==============”);
①用cities.Values()方法,查看一下返回值,把返回值存放在Collection cityName里面.
②实例化cityName的迭代器,存放在it2中.
③用while方法打印迭代器里面的内容.
这里小结一下,HarshMap里面的第一列是keySet,第二列是Value.
3.获得所有条目的集合
①cities.entrySet()方法取出其中所有条目,看看返回值是什么类型的,然后用合适的类型存储,并取名为

entries.
注意:这里的用于接收返回值的set

package javastudy;

import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set;

public class MyTest 
{

    public static void main(String[] args) 
    {
        //****************第1步****************
        HashMap<String, String>cities=new HashMap<String, String>();
        cities.put("021", "bejing");
        cities.put("022", "shanghai");
        cities.put("023", "tianjin");
        cities.put("024", "chongqing");

        //****************第2步获得所有键的集合****************
        Set<String> zips=cities.keySet();
        //cities.keySet();查看返回值类型为set
        //Set<String>在前面新建一个set并在尖括号里<>里写String
        //对象名字为code
        //****************第3步****************
        Iterator<String>it=zips.iterator();

        //****************第4步打印城市名称****************
        while(it.hasNext())
        {
            String zip =it.next();
            String cityName=cities.get(zip);
            System.out.println(cityName);
            //System.out.println("=========================");
            //接下里我还想打印城市名称
            System.out.println(zip+":"+cityName);
        }

        //****************第5步接下来演示获得所有值的集合cities.values();****************
        System.out.println("===========打印所有区号的名称==============");
        Collection<String> cityNames=cities.values();
        Iterator<String> it2=cityNames.iterator();
        while(it2.hasNext())
        {
            System.out.println(it2.next());
        }
        //****************第6步接下来演示获得所有条目的集合entry****************
        System.out.println("===========演示获得所有条目的集合entry==============");
        Set<Entry<String, String>> entries=cities.entrySet();
        Iterator<Entry<String, String>> it3=entries.iterator();
        while(it3.hasNext())
        {
            Entry<String, String>entry=it3.next();
            System.out.println(it3.next()+":"+entry.getValue());
        }


        //****************第7步TreeMap****************
        //程序所有的程序不变,所有HAarshmap改成Treemap,用person,也会报错
        //要实现的话要实现排序接口
    }

}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值