ListIterator接口,双向输出。
1,ListIterator接口与Itreator接口的区别。
2,使用限制。
定义如下:
public interface ListIterator<E>extends Iterator<E>
常用方法:
虽然此接口可以实现双向输出,但是collection接口并没有为此类定义实例化的操作。
只要List接口中才存在ListIterator接口的实例化操作。
范例:完成双向输出:
package 类集;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class test1{
public static void main(String args[]){
List<String> all = new ArrayList<String>() ;
all.add("hello") ;
all.add("_") ;
all.add("world") ;
ListIterator<String> iter = all.listIterator() ;
System.out.print("由前向后输出:") ;
while(iter.hasNext()){
String str = iter.next() ;
System.out.print(str + "、") ;
}
System.out.print("\n由后向前输出:") ;
while(iter.hasPrevious()){
String str = iter.previous() ;
System.out.print(str + "、") ;
}
}
};
输出结果;
由前向后输出:hello、_、world、
由后向前输出:world、_、hello、
但是,这个一定要注意一个事情:
一定要先由前到后,之后才能进行有后到前操作。反过来就不行!这点要注意。
使用ListIterator接口还可以进行增加和替换操作。
add();
set();
package 类集;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class test1{
public static void main(String args[]){
List<String> all = new ArrayList<String>() ;
all.add("hello") ;
all.add("_") ;
all.add("world") ;
ListIterator<String> iter = all.listIterator() ;
System.out.print("由前向后输出:") ;
while(iter.hasNext()){
String str = iter.next() ;
System.out.print(str + "、") ;
iter.set("LI - " + str) ; // 修改内容
}
System.out.print("\n由后向前输出:") ;
iter.add("LXH");
while(iter.hasPrevious()){
String str = iter.previous() ;
System.out.print(str + "、") ;
}
}
};
输出结果:
由前向后输出:hello、_、world、
由后向前输出:LXH、LI - world、LI - _、LI - hello、
总结:
如果要想使用ListIterator接口,必须通过List接口完成。
2,如果要想进行双向输出,只能先进先由前到后,再由后到前
ListIterator接口,双向输出。的更多相关文章
- Java API —— List接口&ListIterator接口
1.List接口概述 有序的 collection(也称为序列).此接口的用户可以对列表中每个元素的插入位置进行精确地控制.用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索 ...
- [置顶] 有关ListIterator接口的add与remove方法探究
ListIterator接口继承自Iterator接口,新增了add()等方法. 关于ListIterator的add()方法的作用(接口是没有方法实现的,但其实现类对于add()方法的实现机制大致相 ...
- 源码阅读—Iterator接口和LIstIterator接口
在继续看ArrayList源码之前,先了解Iterator接口和ListIterator接口,下篇文章详细讲解ArrayList是如何实现它们的. 我们知道,接口只是一种规范,当继承接口并实现其中的方 ...
- 详解 迭代器 —— Iterator接口、 ListIterator接口 与 并发修改异常
(请关注 本人"Collection集合"博文--<详解 Collection集合>) Iterator接口(迭代器): 概述: 对 collection 进行迭代的迭 ...
- [转]有关ListIterator接口的add与remove方法探究
原文地址: http://www.java123.net/v/492971.html 应用案例: http://820199753.iteye.com/blog/2230032 ListIterato ...
- 集合框架-ListIterator接口
1 package cn.itcast.p4.list.demo; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; 5 imp ...
- 吴裕雄--天生自然java开发常用类库学习笔记:ListIterator接口
import java.util.ArrayList ; import java.util.List ; import java.util.ListIterator ; public class Li ...
- Java学习---基础知识学习
2016-07-23 周六 利用键盘输入的时候需要抛出异常 ,直接快捷键 ctrl + 1 ;定义数组 int score[] = new int[4] ; 只有4个数字BufferedRead ...
- java 数据类型:集合接口Collection之List~ArrayList:remove移除;replaceAll改变原有值;sort排序;迭代器listIterator();
什么是List集合: 特点: 元素有序可重复的集合. 集合中每个元素都有其对应的顺序索引. List集合默认按元素的添加顺序设置元素的索引,索引从0开始. List接口的常用方法: List可以使 ...
随机推荐
- 数据结构:单链表结构字符串(python版)
#!/urs/bin/env python # -*- coding:utf-8 -*- #异常类 class stringTypeError(TypeError): pass #节点类 class ...
- 更新整理本人所有博文中提供的代码与工具(Java,2013.11)
为了更方便地管理博文中涉及的各种代码与工具资源,现在把这些资源迁移到 Google Code 中,有兴趣者可前往下载. Java 1.<高效 Java Web 应用开发框架 JessMA v3. ...
- MVC的增删改查
基本都要使用C控制器中的两个action来完成操作,一个用于从主界面跳转到新页面.同时将所需操作的数据传到新界面,另一个则对应新界面的按钮,用于完成操作.将数据传回主界面以及跳转回主界面.根据不同情况 ...
- SQL Server 索引
SQL Server 中数据存储的基本单位是页(Page).数据库中的数据文件(.mdf 或 .ndf)分配的磁盘空间可以从逻辑上划分成页(从 0 到 n 连续编号).磁盘 I/O 操作在页级执行.也 ...
- jQuery演示8种不同的图片遮罩层动画效果
效果预览 下载地址 jQuery插件大全 实例代码 <div class="container"> <h1>jQuery图标和文章动画效果</h1&g ...
- AMD and CMD are dead之KMDjs在JS工程化的努力
总览 kmdjs发布了最接近最终版本的0.0.4版本https://github.com/kmdjs/kmdjs,你已经完全可以在项目中使用.我已经无法用语言形容其完美程度.借用我发的微博: 模块 ...
- CentOS桌面安装
1.显示系统已经安装的组件,和可以安装的组件: #yum grouplist 2.如果系统安装之初采用最小化安装,没有安装xwindow,那么先安装: #yum groupinstall " ...
- 交换机的交换原理、mac学习机制和老化机制
1.交换机的交换原理: 1.交换机在mac地址表中查找数据帧中的目标mac地址,如果找到就讲该数据帧发送到相应的端口,如果找不到就广播. 2.如果交换机收到的报文中的源mac地址和目标mac地址一致的 ...
- iOS之App加急审核详细步骤
申请加急网址:https://developer.apple.com/appstore/contact/appreviewteam/index.html 补充:加急审核说明是可以写中文的 提交加急审核 ...
- 生成的API分析文件太大。我们无法在交付前验证您的API使用信息。这只是通知信息。
这次使用了APICloud平台来开发移动APP, 发布的时候在api控制台云编译成ipa后,这次使用apple提供的Application Loader工具提交apa文件到iTunes上去,提交结束的 ...