java数据结构类型

1.Link–ArrayList和LinkList
*
a.List线性结构链表
b.ArrayList是单向链表,LinkList是双向链表
c.LinkList对于ArrayLis来说速度较慢,适合储存数据变动较大的线性集合
d.Arraylist 的存储空间是连续的,LinkList的存储方式是链式的*

ArrayList<obj> arrayList = new ArrayList<obj>();

LinkList<obj> linkList = new linkList<obj>();

2.Vector
*
a.是一个Object类型的可变长数组
b.存储元素类型不同,但描述对象统一的集合
c.Vsctor的线程安全相对List较高,但速度较慢强调内容
*

Vector<Object> v = new Vector<Object>();
v.add(12313);
v.add(1.11);
v.add("String");
System.out.println(v);

3.HashSet 存储自定义类型(即泛型为自定义类型)
* a.set集合中的每一个数据元素都是唯一的(contains(Object obj) 判断是否含有数据元素obj)
b.使用迭代器(iterator())访问
*

Set<obj> hSet = new HashSet<String>(); 【注意】

Iterator<obj> i = hSet.iterator();
while(i.hasNext()){
     obj obj1 = (obj)i.next();
}

4.Map映射集
*
a.使用键值对的形式存储数据 key-value;
b.使用put(key,value)存储数据
c.不允许出现重复的键值key
d.HashMap不能直接装入迭代器中,只能将所有的key值装入迭代器遍历
或是使用Entry类,将所有数据元素转化为Entr的集合进行处理
*

    Map<obj1,obj2> hMap = new HashMap<obj1,obj2>();

    Set<Entry<obj1,obj2>> hSet = hMap.entrySet();
    Iterator<Entry<obj1,obj2>> it = hSet.iterator();
    while(it.hasNext()){
        Entry<obj1,obj2> en = (Entry<obj1,obj2>) it.next();
        obj1 o1 = en.getKey();
        obj2 o2 = en.getValue();
    }

5.TreeSet树状映射集
*
a.TreeMap是一种有序的映射关系,每个键值对是有序排列的
b.TreeMap当插入新的数据元素时,Treemap可能会重新排序,即整个映射组是不固定的
c.firstKey() – 第一个键值
lastKey() – 最后一个键值
headMap(index) — 获取0~index-1所有元素,组成一个排序映射(SortMap)
tailMap(index) — 获取index~end最后一个元素
*

猜你喜欢

转载自blog.csdn.net/qq_34819372/article/details/77918192