我们在使用集合时应该使用哪个集合呢? 具体还是要看需求, 当然, Java中不只是有这几个, 还有一些没有给出, 具体情况具体分析吧, 仅给出一个小思路.

进行集合的选择: 

    是否是键值对象形式:

    • 一、是:Map

      • 1、键是否需要排序:

        • (1)是:TreeMap
        • (2)否:HashMap
      • 2、不知道,就使用HashMap。
    • 二、否:Collection

      • 1、元素是否唯一:

        • (1)是:Set

          • <1>元素是否需要排序:

            • 是:TreeSet
            • 否:HashSet
          • <2>不知道,就使用HashSet
        • (2)否:List

          • 要安全吗:

            • <1>是:Vector(其实我们也不用它,后面我们讲解了多线程以后,我在给你回顾用谁)
            • <2>否:ArrayList或者LinkedList
                • 增删多:LinkedList      
                • 查询多:ArrayList              
            • <3>不知道,就使用ArrayList          
      • 2、不知道,就使用ArrayList      
04-21 05:59