链表Java

链表Java,java,linked-list,Java,Linked List,这是一个家庭作业问题,但不是真正的评分,只是在未来的项目中使用的东西。我无法显示列表/节点中的内容。 主要是调用displayList时出错 合并将列表合并为新列表,其中包括所有列表1和列表2项 Union仅包含列表1和2中的每个副本中的一个 交叉点仅包括列表1和2中的重复项,而不包括同一列表中的重复项 在合并方法中,注释形式的代码只是当前代码的一种替代形式 //Kevin Clement //Homework 2 class LinkedListHomework {

这是一个家庭作业问题,但不是真正的评分,只是在未来的项目中使用的东西。我无法显示列表/节点中的内容。 主要是调用displayList时出错

合并将列表合并为新列表,其中包括所有列表1和列表2项

Union仅包含列表1和2中的每个副本中的一个

交叉点仅包括列表1和2中的重复项,而不包括同一列表中的重复项

在合并方法中,注释形式的代码只是当前代码的一种替代形式

//Kevin Clement
//Homework 2

   class LinkedListHomework
   {
      public static ListNode Merge(ListNode List1, ListNode List2)
      {
         ListNode head, tail;
         head = tail = new ListNode( "Hi1");

         while(List1 != null && List2 != null)
         {
            if(List1.getItem().toString().compareTo(List2.getItem().toString()) < 0)
            {
               tail.setNext(new ListNode(List1.getItem()));
               List1 = List1.getNext();
            }
            else
            {
               tail.setNext(new ListNode(List2.getItem()));
               List2 = List2.getNext();
            }
            tail = tail.getNext();
         }

      // while(List1 != null)
      // {
      // tail.setNext(new ListNode(List1.getItem()));
      // tail = tail.getNext();
      // List1 = List1.getNext();
      // }
      // 
      // while(List2 != null)
      // {
      // tail.setNext(new ListNode(List2.getItem()));
      // tail = tail.getNext();
      // List2 = List2.getNext();
      // }
         return head.getNext();


      }




   // public static ListNode Union(ListNode List1, ListNode List2)
   // {
   // 
   // 
   // 
   // }

   // // public static ListNode Intersection(ListNode List1, ListNode YList2)
   // {
   // 
   // }

      public void displayList()
      {
         ListNode temp = head;
         System.out.print("head");
         while(temp != null)
         {
            System.out.print("--> " + temp.getItem());
            temp = temp.getNext();
         }
         System.out.print("\n\n");
      }


      public static void main(String args[])
      {

         ListNode A = new ListNode("Adam", new ListNode("Andrew", new ListNode("Kyle", new ListNode("Luc", new ListNode("Michael", new ListNode("Tony"))))));
         ListNode B = new ListNode("Adam", new ListNode("Fallon", new ListNode("Jim", new ListNode("Kyle", new ListNode("Nina", new ListNode("Shea", new ListNode("Tony")))))));

         displayList(A);
         A.displayList();




      }

   }

第一个错误是行
ListNode temp=head
头部
尚未声明

第二个错误是因为您试图使用参数调用
displayList
:它不接受参数。而且,它不是静态方法——必须对对象调用它


第三个错误是因为您试图对类
ListNode
的对象调用
displayList
,而
displayList
实际上属于类
LinkedListHomeline

格式化、格式化、格式化。@pst所说的确实是值得的(例如,在这篇评论之后,我将留下这个问题,因为,如果你不表现出傲慢……对我来说不值得;-)。如果你想忽略格式指南,你最好是个大坏蛋,不需要寻求帮助。那么除了“为我做”之外,你的具体问题是什么?请解释格式,我的格式有什么问题?如果我知道的话,我很乐意改变它。也将编辑我的问题,因为我遗漏了部分。抱歉。@KevinClement缩进显示了结构并有助于传达意图。并尝试从静态方法调用实例方法。
LinkedListHomework.java:61: cannot find symbol  
symbol  : variable head 
location: class LinkedListHomework  
         ListNode temp = head;  
                         ^  
LinkedListHomework.java:78: displayList() in LinkedListHomework cannot be applied to (ListNode)
         displayList(A);  
         ^  
LinkedListHomework.java:79: cannot find symbol  
symbol  : method displayList()  
location: class ListNode  
            A.displayList();  
             ^  
3 errors