A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 李贺晓 于 2012-10-18 17:04 编辑

LinkedList类中的iterator descendingIterator()方法该如何使用
import java.util.*;
class TestLinkedList
{
        public static void main(String[] args)
        {
                LinkedList books=new LinkedList();
                System.out.println(books.poll());
                //System.out.println(books.remove());
                books.offer("java");
                books.add("JAVA");
                books.add("vb");
               
                books.push("vf");
               
                books.addFirst("123");
                books.addLast("456");
               TestLinkedList b=new TestLinkedList();
                //b.find(books);
                books.pollFirst();
                b.find(books);
                books.peekLast();
                b.find(books);
        //System.out.print(books.descendingIterator());//此处可以编译通过,但是运行出来的是一段
        }
        public void find(LinkedList ob)
        {
                for(int i=0;i<ob.size();i++)
                {
                        System.out.println(ob.get(i));
                }
        }
        
}

1.png (808 Bytes, 下载次数: 73)

1.png

评分

参与人数 1技术分 +1 收起 理由
韩军博 + 1 很给力!

查看全部评分

4 个回复

正序浏览
李贺晓 发表于 2012-10-18 17:06
b  是建立的TestLinkedList实例对象

等你看到了迭代器,以后一般遍历集合中的元素最好用迭代器,安全高效,
你自己写的find方法也行。
回复 使用道具 举报
王自强 发表于 2012-10-18 16:34
你的变量 b 是什么啊?

b  是建立的TestLinkedList实例对象
回复 使用道具 举报
  1. import java.util.Iterator;
  2. import java.util.LinkedList;

  3. class TestLinkedList
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                 LinkedList books=new LinkedList();
  8.                 System.out.println(books.poll());
  9.                 //System.out.println(books.remove());
  10.                 books.offer("java");
  11.                 books.add("JAVA");
  12.                 books.add("vb");
  13.                
  14.                 books.push("vf");
  15.                
  16.                 books.addFirst("123");
  17.                 books.addLast("456");
  18.                
  19.                 books.pollFirst();
  20.                
  21.                 books.peekLast();
  22.               //方法descendingIterator返回值是Iterator接口类型的,你要是直接打印的话就会打印出它的地址值,
  23.                 System.out.println(books.descendingIterator());
  24.                /* 打印结果为java.util.LinkedList$DescendingIterator@de6ced 表示它是一个地址值
  25.                 * 表示的是        类名为java.util.LinkedList$DescendingIterator
  26.                 *                         @表示它是一个引用型变量
  27.                 *                         de6ced是此对象哈希码的无符号十六进制表示。
  28.                 * */
  29.                 Iterator it = books.iterator();
  30.                 while(it.hasNext()){
  31.                         System.out.println(it.next());
  32.                 }
  33.                 /*打印结果为 vf java JAVA vb 456 这个顺序是队列LinkedList的正向顺序,
  34.                  * 所以方法iterator返回以正向顺序在此双端队列的元素上进行迭代的迭代器。
  35.                  * */               
  36.                
  37.                Iterator deit = books.descendingIterator();
  38.                while(deit.hasNext()){
  39.                        System.out.println(deit.next());
  40.                }
  41.                /*打印结果为 456 vb JAVA java vf 这个顺序是队列LinkedList的逆向顺序,
  42.                 * 所以方法descendingIterator返回以逆向顺序在此双端队列的元素上进行迭代的迭代器。
  43.                 * */
  44.         }
  45.       
  46.         
  47. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
唐志兵 + 1 赞一个!

查看全部评分

回复 使用道具 举报
你的变量 b 是什么啊?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马