list set和 map的区别

来源:互联网 发布:移动怎么接网络电视 编辑:程序博客网 时间:2024/04/30 13:20
Java中Collection框架,经常在面试中会被问到,比如:你用过哪些Collection框架的类啊?知道他们的区别嘛?对于应聘者怎样回答,回答的方方面面都比较全面呢,才能使得面试官满意,才能让人家觉得你确实对Collection框架很了解、很熟悉,不是临时补习的呢。今天我就对List、Set和Map进行总结,以便于小伙伴们在面试中能有条不紊,条理清晰的回答问题。

      对于这个问题,可能大家都能回答出来,都能说一些基本的看法,但是如何才能使得人家觉得你应该掌握的知识,能够给面试官一个很高的期望呢?对于面试者,我们不紧要回答出基本的知识,如果能回答的更深入点,更全面点,是不是我们和其他人的档次就拉开了呢。

      比如,我们回答这个问题的时候,首先会说:

          1. List可以有重复的对象,有序的,每个对象都带下标
          2. Set不可以有重复的对象
          3. Map是键值成对的

      对于上面的回答,你觉得自己满意嘛?话说对于应聘者会觉得这个问题简单,能回答的不错,保证没有问题。如果你是面试官呢,你会觉得这样的回答就完整了嘛,会认为面试者是充分了解Collection框架,熟悉JDK的人嘛?

      我看倒是未必!(自己看法,切勿喷粉!)

      那么怎样回答呢,才能使得面试者能有个高期望、高评价呢?

      对于这样的问题,我觉得还是靠自己的原始积累的,一方面平时要不断的去用,去做个熟练使用者;另一方面还要自己多去挖掘其背后的原理,比如JDK源码啊,是不是要经常的去看下呢,我觉得只有自己不断的去发现,去挖掘,好多底层原理才能深刻的掌握,去做个挖掘者。使用者+挖掘者,才是我们学习的方法呀。

      上问中,如果我们再添加这样回答:

      小了说:List Set Map都是接口,前两个继承至Collection接口,Map为独立接口
      大了说:
                Set下有HashSet,LinkedHashSet,TreeSet
                List下有ArrayList,Vector,LinkedList
                Map下有Hashtable,LinkedHashMap,HashMap,TreeMap

      那么我们的回复是不是更加的全面了呢?哈哈~

      最后,学习是不断摸索的过程,要有愚公移山的毅力。他山之石,可以攻玉。希望本文对大家有所帮助!3Q

0 0
原创粉丝点击