zoukankan      html  css  js  c++  java
  • JAVA集合框架(一)-综述

    什么是java集合框架

    其实就是java类库提供的一套相当完整的各种数据结构的实现。通常也可以叫做“容器”。比如List、Set、Queue和Map。

    使用类型安全的容器

    通过使用泛型,即给容器添加类型参数,可以在编译期防止将错误类型的对象放置到容器中。例如:
    可以声明一个

    ArrayList<Person> list = new ArrayList<Person>();
    list.add(new Person());
    list.add(new Dog())
    

    此时,编译器可以阻止将Dog对象加入到该容器中。同时,在从容器中取出时,也不用做强制类型转换了。

    集合框架简图

    图片来自java编程思想
    其中点线框表示接口,实线框表示具体的实现类。空心箭头代表实现或是继承关系。实心箭头表示某个类可以生成箭头所指向的类的对象。

    集合类库主要接口简述

    1. Collection
      是一个根接口,是对各种集合类的一种抽象。大部分数据结构都实现了 Collection 接口中的方法。

    2. Map
      存储“键值对”的集合。可以通过键来查找值。最常用的比如HashMap。

    3. List
      允许存储重复的元素,在Collection的基础上增加了大量的方法,可以在中间插入和删除元素等。一般来说是有序的(元素添加的顺序)。

    4. Set
      不允许有重复的元素。Set具有和Collection完全一样的接口,因此没有额外的功能。其实Set集合的一般实现类也是有序。比如HashSet是按散列函数来维护自身有序性。TreeSet和LinkedHashSet分别使用了红黑树和链表来维护元素的插入顺序

    5. Iterator
      迭代器是一个对象,主要的工作是遍历并选择序列中的对象,而不用关心该序列底层的结构。创建它的代价很小。
      因此使用迭代器来遍历获取集合元素是一种不错的选择。

    Collection接口方法概览

    在这里插入图片描述
    其中,有几个比较常用的方法,比如

    • 方法add()添加一个元素到集合中
    • addAll()将指定集合中的所有元素添加到集合中
    • contains()方法检测集合中是否包含指定的元素
    • toArray()方法返回一个表示集合的数组。
    • 另外,Collection中有一个iterator()函数,它的作用是返回一个Iterator接口。
  • 相关阅读:
    poj 3617 Best Cow Line
    POJ 1852 Ants
    Pairs
    codility MinAbsSum
    Codeforces Beta Round #67 (Div. 2)C. Modified GCD
    timus 1018. Binary Apple Tree
    C
    HDU 1299Diophantus of Alexandria
    BZOJ2155(?) R集合 (卡特兰数)
    CSP模拟赛 number (二分+数位DP)
  • 原文地址:https://www.cnblogs.com/happyone/p/11048397.html
Copyright © 2011-2022 走看看