java - 试图通过 java 实现 LinkedList 的概念,但它在编译时给出错误?

标签 java

我正在尝试简单的链表 Collection 程序,但它没有给我输出。
我创造了这个东西

import java.lang.*;  
import java.util.*;  

class Linkedlist  
{  
    public static void main (String [] args)  
    {  
        LinkedList ll=new LinkedList ();  
        System.out.println ("CONTENTS OF l1 = "+ll);  
        System.out.println ("SIZE = "+ll.size ());  
        ll.add (new Integer (10));  
        ll.add (new Integer (20));  
        ll.add (new Integer (30));  
        ll.add (new Integer (40));  
        System.out.println ("CONTENTS OF ll = "+ll);  
        System.out.println ("SIZE = "+ll.size ());

        // retrieving data of ll using toArray ()  
        Object obj []=ll.toArray ();  
        int s=0;  

        for (int i=0; i<obj.length; i++)  
        {  
            Integer io= (Integer) obj [i];  
            int x=io.intValue ();  
            s=s+x;  
        }  

        System.out.println ("SUM USING toArray () = "+s);  
        ll.addFirst (new Integer (5));  
        ll.addFirst (new Integer (6));  
        System.out.println ("CONTENTS OF ll = "+ll);  
        System.out.println ("SIZE = "+ll.size ());  

        // retrieving data of ll using iterator ()  
        Iterator itr=ll.iterator ();  
        int s1=0;  

        while (itr.hasNext ())  
        {  
            Object obj1=itr.next ();  
            Integer io1= (Integer) obj1;  
            int x1=io1.intValue ();  
            s1=s1+x1;  
        }

        System.out.println ("SUM USING iterator () = "+s1);  
        ListIterator litr=ll.listIterator (); 

        while (litr.hasNext ())  
        {  
            Object obj2=litr.next ();  
            System.out.print (obj2+",");  
        } 

        System.out.println ("\n");  

        while (litr.hasPrevious ())  
        {  
            Object obj3=litr.next ();  
            System.out.print (obj3+",");  
        }

        System.out.println ("\n");  
        Object obj4=ll.get (2);// random retrieval  
        System.out.println (obj4);  
    }  
}

输出是

Note: Linkedlist.java uses unchecked or unsafe operations.  
Note: Recompile with -Xlint:unchecked for details.  

最佳答案

我通过eclipse执行了你的程序:

只需使用 LinkedList<Integer>而不仅仅是链表。没有警告。

输出=>

CONTENTS OF l1 = []
SIZE = 0
CONTENTS OF ll = [10, 20, 30, 40]
SIZE = 4
SUM USING toArray () = 100
CONTENTS OF ll = [6, 5, 10, 20, 30, 40]
SIZE = 6
SUM USING iterator () = 111
6,5,10,20,30,40,

Exception in thread "main" java.util.NoSuchElementException
    at java.util.LinkedList$ListItr.next(Unknown Source)
    at com.Linkedlist.main(Test.java:46)

关于java - 试图通过 java 实现 LinkedList 的概念,但它在编译时给出错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11357191/

相关文章:

java - 初始化 Java 变量

Java 垃圾收集日志消息

JavaFx 元素未绑定(bind)到 fx :id 上的 Controller 变量

java - 解析日期以删除时区

java - 计算周、月和年的第一天和最后一天的最佳方法

java - 在Android Studio-3.6.2中离线安装gradle

java - 更改子类中的变量值?

java - 在 eclipse 中将 Java 插件转换为 PHP

java - 如何在测试类中的 main 中 stub 函数(java)

java.lang.ClassNotFoundException : org/apache/xerces/jaxp/DocumentBuilderFactoryImpl