zoukankan      html  css  js  c++  java
  • Java基础知识回顾-21(List接口)

    1、List接口的特点:

    (1) 它是一个元素存取有序的集合。例如,存元素的顺序是11、22、33。那么集合中,元素的存储就是按照11、22、33的顺序完成的)。

    (2) 它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一个道理)。

    (3) 集合中可以有重复的元素,通过元素的equals方法,来比较是否为重复的元素。

    2、List接口的常用子类有:ArrayList集合、LinkedList集合。

    3、List接口的常用方法

    4、当运用迭代器的同时,对集合添加元素,这时候会产生错误 java.util.ConcurrentModificationException,原因是迭代器不知道集合的变化,容易引发数据的不确定性。那么想要在迭代时对元素操作咋办?通过ListIterator迭代器操作元素是可以的,ListIterator的出现,解决了使用Iterator迭代过程中可能会发生的错误情况。

    5、当运用迭代器(增强for或iteration)遍历数据时,不能对集合数据本身进行修改。

    6、List数据存储的常用结构:堆栈,队列,数组,链表。

    7、堆栈的特点:先进后出,类似于压子弹;栈的入口、出口的都是栈的顶端位置; 压栈:就是存元素。即,把元素存储到栈的顶端位置,栈中已有元素依次向栈底方向移动一个位置;弹栈:就是取元素。即,把栈的顶端位置元素取出,栈中已有元素依次向栈顶方向移动一个位置。

     

     

    队列的特点:先进先出,队列的入口出口各占一侧

    数组的特点:查询元素快,增删元素慢。

    链表的特点:各个节点间,通过地址连接;想查找某个元素,需要通过连接的节点,依次向后查找指定元素;增删元素快,只需要修改节点钟的地址即可。

    8、LinkedList集合数据存储的结构是链表结构。方便元素添加、删除的集合。实际开发中对一个集合元素的添加与删除经常涉及到首尾操作,而LinkedList提供了大量首尾操作的方法。如下图

    9、Vector集合数据存储的结构是数组结构,为JDK中最早提供的集合。Vector中提供了一个独特的取出方式,就是枚举Enumeration,它其实就是早期的迭代器。此接口Enumeration的功能与 Iterator 接口的功能是类似的。Vector集合已被ArrayList替代。枚举Enumeration已被迭代器Iterator替代。

     

  • 相关阅读:
    bash变量作用域问题
    grep sed awk find用法
    vim compare 比对
    python的位数问题
    mysql使用
    lua 学习
    iptables的使用
    地铁换乘
    NOJ 1063 生活的烦恼
    猴子的下落
  • 原文地址:https://www.cnblogs.com/zhangrui0328/p/9111785.html
Copyright © 2011-2022 走看看