2つのリンクリストをJavaの3番目のリスト、最初のリンクリスト「myList1」、2番目のリンクリスト「myList2」、3番目のリンクリスト「myList3」に追加するという奇妙な問題に遭遇しました。
結合メソッドは、最初のLinkedList "myList1"、次に2番目の"myList2"を3番目のLinkedList"myList3"に追加することになっていますが、空のときに3番目のリストに追加する際に問題が発生しました。すべてのものがスムーズに進む少なくとも1つの要素。
コード:
Node current = myList1.head;
while (current != null) {
Node newcurrent = myList3.head;
int h1 = current.getData();
Node newNode = new Node(h1);
if (newcurrent == null)
//the problem is with this code
newcurrent = newNode;
else {
if (newcurrent.getLink() == null) {
newNode.setLink(newcurrent.getLink());
newcurrent.setLink(newNode);
} else {
Node current11 = newcurrent;
while (current11.getLink() != null) {
current11 = current11.getLink();
}
current11.setLink(newNode);
}
}
current = current.getLink();
}
3番目のリストが空の場合、ノードは3番目のLinkedListに追加されず、他の多くのコードを試しましたが、どちらも機能しませんでしたが、3番目のLinkedListに少なくとも1つの要素を入力すると、リストは正常に追加されます。
私が試した他のコード:
newcurrent.setLink(newNode);
と
newNode = newcurrent;
newcurrent = newNode;
と
newNode.setLink(newcurrent);
newcurrent.setLink(newNode);
と
newNode.link = newcurrent;
newcurrent.link = newNode;