Java中map集合中的key和value可以是不同类型的值吗?

Java中map集合中的key和value可以是不同类型的值吗?

问题描述:

Mapmap=new TreeMap();是否合法?
还是说只能用Mapmap=new TreeMap();?

key需要是Integer类型,不能是int

可以是不同类型的值,一般key需要实现hashcode和equals两个Object基本方法。

是合法的。Map只是一个接口。TreeMap、HashMap等都是它的实现类。Map map = new TreeMap()都是以多态的形式定义的。不同的实现类具体的功能不一样。所以可以根据自己的需要定义Map

当然可以用不同类型的,不然岂不是灵活性太低了