zoukankan      html  css  js  c++  java
  • 6、集合--List接口

    List集合继承了Collection接口已定义一个允许重复的有序集合

    该接口不但能够对列表的一部分进行处理

    还添加了位置的操作

    源码地址:https://www.cnblogs.com/Mrchengs/p/10842091.html

    相关的方法均在源码中已有说明!!!

    AbstractList和AbstractSequentialList抽象类

    两个抽线类的源码地址:

    https://www.cnblogs.com/Mrchengs/p/10844184.html

    https://www.cnblogs.com/Mrchengs/p/10845263.html

    在java程序中有两个抽象的List实现类,分别时以上的两种

    像AbstractSet类一样,他们覆盖了equals()方法和hashCode()方法以确保两个相等的集合返回相同的哈希码

    如果两个列表大小相等且包含顺序相同的元素

    则这两个列表相等,这里的hashCode()方法在List接口中指定,在这里实现

    除了equsls()方法和hasnCode()方法之外

    还实现了其余List方法的一部分

    因为数据的随机访问和顺序读取是分别实现的

    是得具体表现更为容易

    LinkedList和ArrayList实现类

    在集合框架中有两个常规的List实现

    LinkedList和ArrayList

    如果支持随机访问,不惜在除尾部的任何位置插入或除去元素----ArrayList

    如果频繁的从列表中添加和删除元素,只要顺序的访问列表---LinkedList

    实现地址:https://www.cnblogs.com/Mrchengs/p/10845263.html

    两个实现类都实现类Cloneable接口

    提供了两个构造函数一个无参一个接收一个Collection

    LinkedList:添加了一些处理列表两端的方法

    1、void addFirst(Object o):将对象o添加到列表的开头

    2、void addLast(Object o):将对象o添加大列表的结尾

    3、Object getFirst():返回列表开头的元素

    4、Object getLast():返回列表结尾的元素

    5、Object removeFirst():删除并且返回列表开头的元素

    6、Object removeLast():删除并且返回列表结尾的元素

    7、LinkedList():构建一个空的链表

    8、LinkedList(Collection c):构建一个链接列表并且添加集合c

    ArrayList类:

    ArrayList类封装类一个动态在分配的Object [] 数组

    每个ArrayList对像有一个Capacity

    这个Capacity表示存储列表中元素的数组的容量

    当元素添加到ArrayList时,他会自动在常量的时间内增加

    1、void ensureCapacity(int minCapacity):将ArrayList对像容量增加minCapacity

    2、void trimToSize();整理ArrayList对象容量为列表当前大小,程序可以使用这个操作减少对象的存储空间

  • 相关阅读:
    代码规范
    svn的牛逼操作反向merge
    QT 半透明遮罩(弹窗)
    ACE库 ACE_Handle_Set类解析
    linux系统如何启用ftp服务
    vim color
    Linux动态库应用
    自建工程makefile文件
    Makefile工程文件
    linux杂记
  • 原文地址:https://www.cnblogs.com/Mrchengs/p/10846846.html
Copyright © 2011-2022 走看看