Java实现Arrays.map2List

public class Test01
{

public static void main(String[] args)
{
Map m=new HashMap();
m.put(1, new User());
m.put(2, new User());

List l=map2List(m);



System.out.println(l);
}

public static <K, V> List<V> map2List(Map<K,V> map){
Set<K>keys=map.keySet();
List<V> list=new ArrayList<V>();

for(K key:keys){
list.add(map.get(key));
}

return list;


}
}


这里public static [b]<K,V>[/b]貌似是对泛型对象的一个定义,有了这个定义,后面才可以使用List<V>, Map<K,V>
同理与 public class BaseDao<K>{...}。


这里是不能用? extends Object作为泛型的,会报错:
[color=red]Cannot instantiate the type ArrayList<? extends Object>[/color]

在网上查了一下, 解释是:
[i]The generic ArrayList constructor needs to have a specific type to be parameterized on, you cannot use the '?' wildcard there.[/i]

不管怎么说, 上面的代码测试没有问题。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值