关于ListIterator的知识:
ListIterator的父接口是Iterator,是List接口中特有的迭代器。
ListIterator在Iterator的基础上,又新添了很多方法:
Iterator中的方法:
1、判断是否有下一个元素:hasNext();
2、获取下一个元素:next();
3、删除迭代器指向的元素:remove();
ListIterator新添的方法:
4、判断是否有前一个元素:hasPrevious();
5、获取前一个元素:     previous();
6、添加元素  add(e);
7、获取next后续元素的索引:  nextIndex();
8、获取previous后续元素的索引:previousIndex();
9、替换指定元素:                 set(E e);
使用ListIterator的好处:可以并发执行操作,Iterator不能,Iterator如果并发执行操作,迭代器会出现不确定性行为。



package 集合框架练习;import java.util.AbstractList;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;//定义一个List对象,如下
//List list = new ArrayList();
//1) 在list中添加元素,nihao,wohao,dajiahao,nihao
//2) 在list的第二个位置添加元素,tahao
//3) 用Iterator迭代器遍历打印list中元素
//4) 在打印时,将list中的nihao,修改为nibuhao(提示:需要用到ListIterator)public class TestArrayList {
public static void main(String[] args) {
List list = new ArrayList();
//1) 在list中添加元素,nihao,wohao,dajiahao,nihao
list.add("nihao");
list.add("wohao");
list.add("dajiahao");
list.add("nihao");
System.out.print("list中的元素为:\t");
for(int i=0;i
System.out.print(list.get(i)+"\t");
}
System.out.println();
//2) 在list的第二个位置添加元素,tahao
list.add(1,"tahao");   //从0开始计数
System.out.print("添加“tahao”后,list中的元素为:\t");
for(int i=0;i
System.out.print(list.get(i)+"\t");
}
System.out.println();
//3) 用Iterator迭代器遍历打印list中元素
//迭代器Iterator it=list.iterator();  //判断是否有下一个元素:hasNext();System.out.print("用Iterator迭代器遍历打印list中的元素: ");while(it.hasNext()){System.out.print(it.next()+"\t");}System.out.println();//4)在打印时,将list中的nihao,修改为nibuhao(提示:需要用到ListIterator)list.set(0, "nibuhao");Iterator it1=list.iterator(); System.out.print("修改之后的list为:");while(it1.hasNext()){System.out.print(it1.next()+"\t");}System.out.println();}private static List set(int i, String string) {
// TODO Auto-generated method stub
return null;
}}

List接口和ArrayList类练习相关推荐

  1. Java ArrayList 类(详解)

    ArrayList 一.ArrayList 是什么? 二.Java ArrayList 方法 三.案例演示 结果: 一.ArrayList 是什么? ArrayList 类是一个可以动态修改的数组,与 ...

  2. Java中List接口重要实现类一ArrayList

    1.java.util.ArrayList 集合数据存储的结构是数组结构.元素查找快,而增删就比较慢 所以如果要查询数据,遍历数据,ArrayList是最常用的集合 2.ArrayList是不同步的, ...

  3. Java集合(4)--List接口及其实现类ArrayList、LinkedList和Vector

    文章目录 List接口概述 List接口常用方法 ArrayList实现类 LinkedList实现类 Vector实现类 List接口概述 List集合类中元素有序.且可重复,集合中的每个元素都有其 ...

  4. java vector实现的接口_java的List接口的实现类 ArrayList,LinkedList,Vector 的区别

    Java的List接口有3个实现类,分别是ArrayList.LinkedList.Vector,他们用于存放多个元素,维护元素的次序,而且允许元素重复. 3个具体实现类的区别如下: 1. Array ...

  5. java vector实现的接口_java中List接口的实现类 ArrayList,LinkedList,Vector 的区别 list实现类源码分析...

    java面试中经常被问到list常用的类以及内部实现机制,平时开发也经常用到list集合类,因此做一个源码级别的分析和比较之间的差异. 首先看一下List接口的的继承关系: list接口继承Colle ...

  6. 写一个ArrayList类的动态代理类

    动态代理可以提供对另一个对象的访问,同时隐藏实际对象的具体事实,代理对象对客户隐藏了实际对象.动态代理可以对请求进行其他的一些处理,在不允许直接访问某些类,或需要对访问做一些特殊处理等,这时候可以考虑 ...

  7. arraylist 初始化_Java二维数组和动态数组ArrayList 类

    Java二维数组 Java 语言中提供的数组是用来存储固定大小的同类型元素. 1.二维数组初始化和声明 数组变量的声明,和创建数组可以用一条语句完成,如下所示: int a[][] = new int ...

  8. java remove removeat_2016.3.12 Java中ArrayList类详解(转)

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

  9. C#——实现IComparableT 接口,ArrayLIst调用ArrayLIst.Sort()抛出System.InvalidOperationException异常解决方案

    问题描述 未经处理的异常: System.InvalidOperationException: 未能比较数组中的两个元素. ---> System.ArgumentException: 必须至少 ...

最新文章

  1. matlab中prismastic,魅力值是什么意思
  2. 大概了解了flexbox
  3. 文本分类入门(三)统计学习方法
  4. Flutter入门:Offstage和Visibility
  5. LeetCode28 对称的二叉树-简单
  6. 【HDU - 1266 】Reverse Number(模拟,数字分位数处理)
  7. prestashop 隐藏 index.php,删除PrestaShop中的供应商和制造商页面
  8. TCP/UDP套接字网络协议
  9. 【java】输入球的半径,求出其体积
  10. 【转】Servlet/JSP学习笔记(3)-Lomboz介绍+安装方法
  11. MapAbc使用体验
  12. Linux下压缩文件夹
  13. PPT到WORD的组合图片复制
  14. 女生适合做软件开发工作吗?优势在哪里?
  15. 《简单法则》读书笔记
  16. matlab数据整周期截断,凯塞窗四谱线插值FFT的电力谐波分析方法
  17. (-ent -ant -ment)recipe and recipient
  18. 在项目中这样写代码的时候,请搭配红花油、跌打损伤酒一起使用
  19. ASP.NET MVC3 快速入门
  20. excel透视表无添加字段_在Excel数据透视表中添加过滤器标记

热门文章

  1. swagger2 域名访问接口地址变成127.0.0.1
  2. 面 试 题 葵 花 宝 典
  3. 本办法学SOAP---SAOP/WSDL祥解
  4. linux lftp默认端口,linux lftp与sftp使用
  5. Oracle中Timestamp类型字段查询结果格式化处理
  6. JAVA时间戳格式化为正常日期字符串操作
  7. IMU和INS的区别
  8. ibm服务器安装2008系统蓝屏,ibm x3550m3 serverguide_8.42 引导安装server 2003 蓝屏 错误代码 0x000007b...
  9. .Net Core微服务入门——Ocelot API网关接入(一)
  10. matlab如何画一个圆柱,matlab怎么画圆柱