map 与 hashmap 和 list 与 ArrayList区别

map 与 hashmap 和 list 与 ArrayList区别

list是接口,list特性就是有序,会确保一定的顺序保存元素

ArrayList是它的实现类,是一个有用数组实现的list

map是接口,map特性就是根据一个对象查找对象

Hashmap是它的实现类,hashmap用hash表实现的map

Map map = new HashMap();

这个其实你定义的是一个接口,你调用这个接口来实现你要完成的动作,这样别人直接用你这个接口就可以了,而不用关心你具体是怎么实现这个接口的,假如以后有变动的话,你不用在去管这个接口,只去改下你的实现类就可以了,方便维护,隔离性强。

HashMap map = new HashMap();

而这个 你定义的就是一个实现类,你把这个实现类给别人用,在出现问题和改动的话,那么程序就无法运行,凡是用到这个类的地方都要修改,维护起来很麻烦,而上面的接口,你只需要改你实现这个接口的实现类就可以了。这样就是你说的降低了藕合性。

Map集合的遍历方式(2种)

            (1)键找值

                <1>先获取到双列结合所有键的集合     keySet()方法,返回的也是一个set集合

                <2>遍历获取到的键的集合

                <3>根据遍历到的键来获取值     map.get(传入键)


            (2)根据键值对对象来获取键和值

                <1>先获取到双列集合中所有键值对的对象集合    map.entrySet<K,V>

                <2>遍历第一步获取到的键值对的对象集合,获取每一个键值对对象

                <3>根据遍历到的键值对对象来获取键和值 

                            getkey()   获取键

                            getValue()  获取值

猜你喜欢

转载自blog.csdn.net/a_a_0331/article/details/81145519
今日推荐