[英]Add a linked list to another linked list in java
我試圖使用MyLinkedList類中稱為addList的方法將鏈表添加到另一個鏈表。 我所堅持的是如何實現該方法,以便可以將鏈表添加到所選索引位置的另一個鏈表中。
這是MyLinkedList中的內容:
public void addList(int index, E e){
if(index == 0){
addFirst(e);
} else if (index >= size){
addLast(e);
}
else{
Node<E> current = head;
for(int i = 1; i < index; i++){
current = current.next;
}
Node<E> temp = current.next;
current.next = new Node<E>(e);
(current.next).next = temp;
size++;
}
}
我知道這種方法行不通,我已經嘗試過了。 在我的程序中,我有以下這些:
public class linkedlistwork {
public static void main(String[] args) {
MyLinkedList<String> alpha = new MyLinkedList<String>();
alpha.add("hello");
alpha.add("world");
alpha.add("this");
System.out.println(alpha);
MyLinkedList<String> beta = new MyLinkedList<String>();
beta.add("is");
beta.add("java");
beta.add("rocks");
System.out.println(beta);
alpha.addList(1, beta);
System.out.println(alpha);
}
}
正確的輸出如下所示:
OUTPUT:
[hello, is, java, rocks, world, this]
我的程序無法運行,此行發生錯誤
alpha.addList(1, beta);
在“測試版”部分,它說:
類MyLinkedList中的addList方法不能應用於給定類型; 必需:int,找到的字符串:int,MyLinkedList原因:實際參數MyLinkedList無法通過方法調用轉換(其中E是類型變量)轉換為String:E擴展了在類MyLinkedList中聲明的對象
我該如何解決我的方法,以便可以正確使用它? 提前致謝!!
在我看來,您的addList方法簽名是問題所在。 它應該看起來像:
public void addList(int index, List<E> list)
您需要一種添加MyLinkedList<String>
。 這樣的事情會做
public void addList(int index, MyLinkedList<E> beta){
//Somehow loop through the MyLinkedList, and do this.
add(index+i,beta(i));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.