java使用listIterator逆序arraylist示例分享

 更新时间:2014年02月27日 15:43:22   作者:  
对于列表而言,除了Iterator,还提供了一个功能更加强大的ListIterator。它可以实现逆序遍历列表中的元素。本示例将使用其逆序遍历ArrayList

思路分析:要逆序遍历某个列表,首先要获得一个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() + " ");
            }
        }
}

效果如图:

相关文章

  • java中maven下载和安装步骤说明

    java中maven下载和安装步骤说明

    在本篇文章里小编给大家分享的是一篇关于java中maven下载和安装步骤说明内容,对此有兴趣的朋友们可以学习参考下。
    2021-02-02
  • 在SpringBoot中使用MongoDB的简单场景案例

    在SpringBoot中使用MongoDB的简单场景案例

    MongoDB 是一种非关系型数据库,也被称为 NoSQL 数据库,它主要以文档的形式存储数据,本文给大家介绍了在SpringBoot中使用MongoDB的简单场景案例,并通过代码示例讲解的非常详细,需要的朋友可以参考下
    2024-09-09
  • 详解SpringBoot中自定义starter的开发与使用

    详解SpringBoot中自定义starter的开发与使用

    starter是SpringBoot中非常重要的一个机制,他是基于约定优于配置的思想所衍生出来的,本文主要介绍了SpringBoot中自定义starter的开发与使用,感兴趣的可以了解下
    2023-09-09
  • java读取文件内容的三种方法代码片断分享(java文件操作)

    java读取文件内容的三种方法代码片断分享(java文件操作)

    本文介绍java读取文件内容的三种方法,代码可以直接放到程序中使用,大家参考使用吧
    2014-01-01
  • Java详细讲解分析双指针法的使用

    Java详细讲解分析双指针法的使用

    严格的来说,双指针只能说是是算法中的一种技巧。双指针指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,而是使用两个相同方向(快慢指针)或者相反方向(对撞指针)的指针进行扫描,从而达到相应的目的
    2022-04-04
  • springboot如何引入外部yml配置文件

    springboot如何引入外部yml配置文件

    这篇文章主要介绍了springboot如何引入外部yml配置文件,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • Java二进制操作(动力节点Java学院整理)

    Java二进制操作(动力节点Java学院整理)

    这篇文章给大家介绍了java二进制操作技巧,包括移位、位运算操作符等相关知识点,非常不错,感兴趣的朋友参考下吧
    2017-03-03
  • Java Volatile关键字实现原理过程解析

    Java Volatile关键字实现原理过程解析

    这篇文章主要介绍了Java Volatile关键字实现原理过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Java中List集合对象去重及按属性去重的8种方法

    Java中List集合对象去重及按属性去重的8种方法

    这篇文章主要介绍了Java中List集合对象去重及按属性去重的8种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一地的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • 实例讲解Java 自旋锁

    实例讲解Java 自旋锁

    这篇文章主要介绍了Java 自旋锁的相关资料,帮助大家更好的理解和学习Java并发,感兴趣的朋友可以了解下
    2020-09-09

最新评论