javase集合

来源:互联网 发布:网络数字高清摄像头 编辑:程序博客网 时间:2024/05/21 07:04

概念:存储对象类型的一个整体,注意和数组不一样的地方是存储的都是对象

collection:最基本的集合接口,一个collection就代表一组object。

list 接口(有索引     元素可重复    有序的集合  添加的顺序和存储的顺序一样)

{

     ArrayList:线程不安全可变的数组     更适合查找

     LinkdList:链表  实现了双向操作    更适合增删改

}

set接口(无索引     元素不可重复       无序的集合  添加的顺序和存储的顺序不一样)

{

     Hashset:不能保证元素的排列顺序,顺序有可能发生变化,可以放入null,但只能放入一个null

     Treeset:Treeset中的数据是自动排好序的,不允许放入null值

}

map接口(“键值”对映射的抽象接口。该映射不包括重复的键,一个键对应一个值)

{

     HashMap:适用于在Map中插入、删除和定位元素,

     TreeMap:自然顺序或自定义顺序遍历键,

}

下面举简单例子分别说明下

list按添加顺序排列的(用ArrayList举例)

public class TestArrayList {
       public static void main(String[] args) {
  ArrayList  al = new ArrayList();
           al.add("赵老师");
           al.add("钱老师");
           al.add("孙老师");
           al.add("李老师");
        
       for (Object obj : al) {
System.out.println(obj);
}
    }
}




HashSet(输出是无序的且只允许一个null)

public class TestHashSet {
       public static void main(String[] args) {
  
           HashSet hs = new HashSet();
  hs.add("张学生");
  hs.add("李学生");
  hs.add("王学生");
  hs.add("赵学生");
  hs.add(null);
  hs.add(null);
  System.out.println(hs);

    }
}



TreeSet

public class TestTreeSet {
       public static void main(String[] args) {
  TreeSet ts = new TreeSet();
           ts.add("张三");
           ts.add("李四");
           ts.add("王五");
           ts.add("赵六");
       
          System.out.println(ts);
    }
}


看放入null



HashMap举例

public class TestHashMap {
           public static void main(String[] args) {
 

           HashMap hm = new HashMap();
  hm.put(3, "张三");
  hm.put(1, "李四");
  hm.put(4, "王五");
  hm.put(2, "赵六");
  

           System.out.println(hm);
       }   
}



collection集合的简单解释就是这么多了,欢迎各路大神指正。

原创粉丝点击