黑马程序员——java小结_014.001_map+泛型输出

本文介绍了Java中使用泛型遍历Map集合的方法,包括通过entrySet获取Set对象并迭代输出键值对,以及利用keySet获取所有键再通过Map的get方法输出对应的值两种常见方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

------- android培训java培训、期待与您交流! ----------

    map+泛型输出和map输出基本一样,也是本身并不能直接为Iterator实例化,使用Iterator输出Map集合中内容的话,同样有两种方法,和不加泛型一样但是有略微的区别:

方法一:

1.通过entrySet方法变成Set对象

Set<Entry<Integer,String>> s = m.entrySet();

2.调用Set的Iterator方法,此时每个Iterator对象是Map.Entry对象

    Iterator<Entry<Integer,String>> it = s.iterator();

3.对Map.Entry分离出 key - value(这里不一样

    Entry<Integer,String> e = it.next();//用到了泛型,这里消除了强转!

 

方法二:

1.通过keySet得到Map集合多有key的Set集合

Set<Integer> set =m.keySet();

2.调用Set的Iterator方法,此时每个Iterator对象是key值

    Iterator<Integer>iter = set.iterator();

3.通过Map的getValue(key)得到value值

 

 

<span style="font-size:18px;">//泛型加Map的输出!
 
import java.util.*;
 
public class Demo {
    public static void main(String[] args) {
       Map<Integer, String> m = new TreeMap<Integer,String>();
      
       m.put(1, "校长");
       m.put(2, "老师");
       m.put(3, "学生");
      
       System.out.println(m);
      
       //第一种方式,用到了entrySet方法
       Set<Entry<Integer, String>> s = m.entrySet();
       Iterator<Entry<Integer, String>> it =s.iterator();
       while(it.hasNext()){
           Entry<Integer, String> e = it.next();//用到了泛型,这里消除了 强转!
           System.out.println(e.getKey()+"  "+e.getValue());
       }
      
      
       //第二种方法,用到了keySet方法
       Set<Integer> set = m.keySet();
       Iterator<Integer> iter = set.iterator();
       while(iter.hasNext()){
           Integer i = iter.next();//直接写到输出语句,出错!
           System.out.println(i+"  "+m.get(i));
       }
    }
}</span>


 ------- android培训java培训、期待与您交流! ----------


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值