我有問題將鍵盤中鍵入的數據存儲到我的鏈接列表添加方法。這個程序的重點是使用鏈表實現一個隊列。唯一的是,類構造函數接受列表中每個節點的兩個參數(它們的名稱和鏈接)。鏈接列表對象不存儲空白鏈接列表中的字符串輸入
這裏是我的類文件,那麼遠,
public class linklist_MP
{
//Private intance variables and links
private linklist_MP front;
private linklist_MP rear;
private linklist_MP link;
private linklist_MP previous;
private String data;
private int count = 0;
private boolean flag;
//Construtor for Each Node's link and parameter type
public linklist_MP(String input, linklist_MP intiallink)
{
data = input;
link = intiallink;
}
public boolean listEmpty()
{
flag = false;
if(count == 0)
{
flag = true;
}
return flag;
}
public void addList(String input)
{
//Creating new node with read input
//linklist_MP node = new linklist_MP(input, null);
if(count == 0)
{
front = new linklist_MP(input, front);
}
else
{
previous = front;
while(previous.link != null)
{
previous = previous.link;
}
rear = previous;
rear.link = new linklist_MP(input, null);
}
count++;
}
public String toString()
{
String result = data + " ";
if (link != null)
{
result += link.toString();
}
return result;
}
}
,這裏是我的驅動程序文件,這使得我的類,並存儲在用戶數據的對象..
import java.io.*;
import java.util.Scanner;
import java.util.StringTokenizer;
public class linklistDriver_MP
{
public static void main(String[] args)
{
String input;
Scanner keyboard = new Scanner(System.in);
System.out.println("Just add a String: ");
input = keyboard.nextLine();
linklist_MP object = new linklist_MP(input, null);
object.addList(input);
System.out.println("Add another String: ");
input = keyboard.nextLine();
object.addList(input);
System.out.println("\nTime to print the list out: ");
object.toString();
}
}
基本上當我在驅動程序文件中調用打印方法以打印鏈接列表中的所有節點時,什麼也不出來,並且列表打印爲空白。我想弄清楚爲什麼這是因爲我用我的驅動程序中的對象添加用戶在鍵盤中輸入的兩個字符串,因爲調用add方法......先謝謝了!
您的鏈接列表類已經全部重新開始,您應該徹底重新開始。您需要查看如何實現LinkedList。對於這一行絕對沒有意義:'front = new linklist_MP(input,front);'。 'front'爲null,所以你只需在'front'節點中將「initiallink」設置爲null即可。我不知道這應該是什麼意思,但我確定這不是你想要的。 – Jared
哈哈感謝您的輸入。但是該行:'front = new linklist_MP(input,front);'是標識第一個節點,因爲它指向鏈表中最後一個節點鏈接爲null的鏈表。至少這就是我所要做的,因爲我只能添加到列表的後面。 – MannyFreshx
我瞭解'前面'和'後面'是否是_supposed_。我不明白的是爲什麼你把'link'作爲一個字段。就像我說的,當你調用'new linklist_MP(input,front);','front'是'null',因此它將''''link''設置爲'null'。 – Jared