java使用listIterator逆序arraylist示例分享_java

思路分析:要逆序遍历某个列表,首先要获得一个ListIterator对象,利用for()循环,以ListIterator类的hasNext()方法作为判断条件,通过循环执行ListIterator类的next()方法将游标定位到列表结尾,然后在另一个for循环中,以ListIterator类的hasPrevious()方法作为判断条件,通过ListIterator类的previous()方法逆序输出列表中的元素。

代码如下:

复制代码 代码如下:

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class IteratorDemo {
     public static void main(String[] args) {
            List<Integer> list = new ArrayList<Integer>();// 创建列表
            for (int i = 0; i < 10; i++) {// 向列表中增加10个元素
                list.add(i);
            }
            Iterator it = list.iterator();
            System.out.print("ArrayList集合中的元素为:");
            while(it.hasNext()){
                System.out.print(it.next()+" ");
            }     
            System.out.println();
            System.out.println("逆序后为:");
            ListIterator<Integer> li = list.listIterator();// 获得ListIterator对象
            for (li = list.listIterator(); li.hasNext();) {// 将游标定位到列表结尾
                li.next();
            }
            for (; li.hasPrevious();) {// 逆序输出列表中的元素
                System.out.print(li.previous() + " ");
            }
        }
}

效果如图:

时间: 2024-10-29 21:21:17

java使用listIterator逆序arraylist示例分享_java的相关文章

java使用iterator遍历指定目录示例分享_java

可以遍历指定目录(一个或多个)及其所有子文件,用Iterator实现 复制代码 代码如下: package archiver.util; import java.io.File;import java.util.ArrayList;import java.util.Arrays;import java.util.Iterator;import java.util.List; public class FileIterator implements Iterator<File>, Iterabl

java多线程Future和Callable类示例分享_java

一,描写叙述     ​在多线程下编程的时候.大家可能会遇到一种需求,就是我想在我开启的线程都结束时,同一时候获取每一个线程中返回的数据然后再做统一处理,在这种需求下,Future与Callable的组合就派上了非常大的用场. 也有人会说,我能够使用同步来完毕这个需求啊,普通情况下确实能够.可是在一种特殊情况下就不行了:     ​想象,你开启了多个线程同步计算一些数据,可是大家都知道,线程是会争用资源的,也就是说.你开启多个线程来同步计算数据时.事实上线程之间的计算顺序是不可空的,当然除非你非

java使用ftp上传文件示例分享_java

复制代码 代码如下: import java.io.ByteArrayInputStream;  import java.io.FileOutputStream;  import java.io.IOException;  import java.net.SocketException;  import java.text.SimpleDateFormat;  import java.util.Date;  import org.apache.commons.io.IOUtils;  impor

java实现文本文件删除空行的示例分享_java

java删除文本文件空行 复制代码 代码如下: import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamRead

使用java swing实现qq登录界面示例分享_java

用Java Swing做的一个QQ登录界面 复制代码 代码如下: import java.awt.Container;import java.awt.Image;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JCheckBox;import javax

java跟踪执行的sql语句示例分享_java

代码: 复制代码 代码如下: package com.lwj.test.proxy; import java.lang.reflect.InvocationHandler;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.lang.reflect.Proxy;import java.sql.Connection;import java.sql.SQLExce

java使用泛型实现栈结构示例分享_java

思路分析:既然是用泛型实现栈结构,那就不能用JDK自带的stack包了,需要自己定义一个栈结构,比如LinkedList. 代码如下: Stack.java: 复制代码 代码如下: package cn.edu.xidian.crytoll;import java.util.LinkedList; public class Stack<T> {     private LinkedList<T> container = new LinkedList<T>();     

java实现操作系统的短进程作业调度示例分享_java

复制代码 代码如下: package com; import java.util.Arrays; public class sjf {   public static void main(String[] args) {   sjf SJF=new sjf();   SJF.fun1();  }   int starttime;  int arrivetime;  int finishtime;  int zhouzhuan;     public void fun1(){    int a[]

Java实现AES加密算法的简单示例分享_java

高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准.这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用. 大多数AES计算是在一个特别的有限域完成的. AES加密过程是在一个4×4的字节矩阵上运作,这个矩阵又称为"状态(state)",其初值就是一个明文区块(矩阵中一个元素大小就是明文区块中的一个Byte).(Rijndael加密法因支持更大的区块,其矩阵行