集合
(2)

在计算机中管理对象时,当获取多个对象后,也需要一个容器将它们管理起来,这个容器就是集合
集合本质是基于某种数据结构的数据容器。常见的数据结构:数组(Array)、集合(Set)、队列(Queue)、链表(Linkedlist)、树(Tree)、堆(Heap)、栈(Stack)和映射(Map)等结构;集合长度可变
集合的继承体系结构

Collection
    List java.util.List    java.awt.List(图形用户组件)
        ArrayList 基于动态数组数据结构 访问元素速度高
        Vector 基于数组
        LinkedList 基于链表数据结构 插入或删除数据效率高
    Set
        HashSet 基于散列表数据结构
        TreeSet 基于红黑树(是一个自平衡的二叉树)
    Map<key,value>
        HashMap<k,V> 基于散列表数据结构
boolean addAll(Collection c): 添加元素
boolean remove(Object o): 移除一个元素
void clear(): 移除所有元素
boolean removeAll(Collection c): 只要有一个元素被移除了,就返回true
boolean retainAll(Collection c)
 A对B做交集,最终的结果保存在A中,B不变,返回的是a的变化

把集合转为数组

Object[] toArray()

public static List<> asList()把数组转为集合,该集合的长度不可变

Map

Map(映射)集合由两个集合构成,一个是键(key)集合,一个是值(value)集合,不能有重复的元素;键值是成对出现的。

Map集合遍历
通过Map.keySet遍历key和value
map.keySet()返回的是所有key的值
map.get(in)得到每个key对应value的值
通过Map.entrySet使用iterator遍历key和value
通过Map.entrySet遍历key和value
map.entrySet() 返回此映射中包含的映射关系的 Set视图。
通过Map.values()遍历所有的value,但不能遍历key

泛型:只要在编译时期没有出现警告,那么运行时期就不会出现ClassCastException异常

    ArrayList<String> list = new ArrayList<>();

    list.add("hello");
    list.add("world");
    list.add("java");

    //增强for
    for (String s : list) {
        System.out.println(s);
    }
本文为作者valive发布,未经允许禁止转载!
上一篇 下一篇
评论
评论已关闭 >_<

评论已关闭