List、Set、Map集合的解说与区别

来源:互联网 发布:股票指标软件 编辑:程序博客网 时间:2024/06/10 02:30

List、Set、Map三种集合

1、List集合

         List集合包括 ArrayList,LinkedList、Vector

     1)ArrayList

List<String> list=new ArrayList<String>();list.add("A");list.add("B");list.add("C");list.add("A");System.out.println(list.size());//答应集合的长度,这里是4//遍历集合for (String str : list) {System.out.println(str);}
      2)LinkedList

LinkedList<String> list=new LinkedList<String>();list.add("A");list.add("B");list.add("C");list.add("A");list.addFirst("first");//增加到第一行list.addLast("last");//增加到最后一行list.removeFirst();//移除掉第一个for (String str : list) {System.out.println(str);}
       3)Vector

          Vector v = new Vector();           for(int i = 0; i < 10; i++)            v.addElement("Hello World"+i);            System.out.println(v);           } 
2、Set集合
        Set集合包括HashSet、TreeSet

      1)HashSet

                HashSet<String> hashSet=new HashSet<String>();hashSet.add("A");hashSet.add("C");hashSet.add("B");hashSet.add(null);//HashSet可以加空值for (String str : hashSet) {System.out.println(str);}

        2)TreeSet

TreeSet<String> treeSet=new TreeSet<String>();treeSet.add("A");treeSet.add("C");treeSet.add("B");treeSet.add(null);
                for (String str : treeSet) {System.out.println(str);}

3、Map集合

     Map集合包括 HashMap、HashTable、TreeMap、迭代Map

          1)HashMap

        Map<String, Object> map=new HashMap<String, Object>();             map.put("A", "AAAA");        map.put("2", "2222");        map.put("3", "3333");        map.put("王", "大小王");                     //三种拿值的方法        //遍历        //01.获取所有的键,再根据键获取值        Set<String> strings=map.keySet();        for (String string : strings) {            System.out.println(string+":"+map.get(string));        }                //02.获取所有的值        Collection<Object> collection=map.values();        for (Object object : collection) {            System.out.println(object);        }                //03.获取键和值(一个一个)        Set<Entry<String, Object>> entries=map.entrySet();        for (Entry<String, Object> entry : entries) {            System.out.println(entry.getKey() + " " + entry.getValue());        }
          2)HashTable

                  Hashtable arrays = new Hashtable();   arrays.put("Array1", "1");   arrays.put("Array2", "2");   arrays.put("Array3", "3");   //以下是遍历Hashtable:   Enumeration keys = arrays.keys();   while( keys.hasMoreElements() )    {        Object key = keys.nextElement();        Object value = arrays.get(key);        System.out.println(value);   }

         3)TreeMap

            TreeMap map = new TreeMap();         map.put("a","a");    map.put("b", "b");    map.put("c","c");    Collection col = map.values();    Iterator it = col.iterator();    while(it.hasNext()) {        System.out.println(it.next());    }
          4)迭代Map

             HashMap的三种拿值方法就是迭代Map的用法

                 1.map.keySet();
                 2.map.values();
                 3.entry.getValue();

区别

List
    <1>ArrayList
        数组结构,查询快,增删改慢
    <2>LinkedList(特有方法addFirst)
        链表结构,查询慢,增删改快
    <3>Vector
        增删改查慢
Set
     <1>HashSet可以加空值
     <2>TreeSet不可以加空值
Map
     <1>HashMap  可以加空值(无序)
     <2>HashTable  不能加空值(无序)
     <3>TreeMap   可以加空值(有序)



三种集合分享完毕,欢迎大家指点一二



原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 儿童发烧到39度怎么办 7岁儿童发烧40度怎么办 7岁反复发烧39度怎么办 宝宝烧到39.5度怎么办 3岁儿童发烧39度怎么办 孩子发高烧怎么办39度5 3岁宝宝不吃水果怎么办 2岁宝宝不吃水果怎么办 4岁宝宝不吃水果怎么办 过早竖抱婴儿了怎么办 3个月宝宝认生怎么办 10天婴儿不拉屎怎么办 3个月宝宝不吃奶粉怎么办 婴儿吃青菜吃多怎么办 2月宝宝消化不好怎么办 吃母乳的宝宝便秘怎么办 婴儿拉肚子怎么办大便绿色的 10个月宝宝睡眠不好怎么办 婴幼儿消化不良引起的腹泻怎么办 小孩晚上睡觉不盖被子怎么办 镜子对着房间门怎么办 高血压引起的眼底出血怎么办 墙砖颜色选深了怎么办 墙砖颜色太深怎么办 30岁了没有朋友怎么办 产检宝宝腿短怎么办 2岁宝宝不学说话怎么办 4岁了还不会说话怎么办 两周岁还不说话怎么办 2岁了不会说话怎么办 一岁宝宝蛀牙了怎么办 分手了想联系他怎么办 和婆家人闹翻了怎么办 2岁宝宝不好断奶怎么办 2岁宝宝断奶哭闹怎么办 脑子感觉变笨了怎么办 5岁数学不开窍怎么办 小孩拼音太差了怎么办 我生了爸爸孩子怎么办 三岁宝宝特别犟怎么办 孩子说老师打他怎么办