Java 将文本从txt文件放入链接列表
我正在尝试将数字表达式行标记为CS项目的链接列表。我必须使用我在以前的实验室中创建的链接列表 我将一行的每个数字和运算符标记化,并在标记化后将每个标记插入链接列表中的一个节点。当我编写程序以打印每个标记时,每个标记都会被打印出来。但是当我告诉它打印包含每个令牌作为节点的链表时,一些操作符丢失了。我不知道这种行为的原因是什么 下面是创建包含每个令牌的链接列表的方法:Java 将文本从txt文件放入链接列表,java,linked-list,stringtokenizer,Java,Linked List,Stringtokenizer,我正在尝试将数字表达式行标记为CS项目的链接列表。我必须使用我在以前的实验室中创建的链接列表 我将一行的每个数字和运算符标记化,并在标记化后将每个标记插入链接列表中的一个节点。当我编写程序以打印每个标记时,每个标记都会被打印出来。但是当我告诉它打印包含每个令牌作为节点的链表时,一些操作符丢失了。我不知道这种行为的原因是什么 下面是创建包含每个令牌的链接列表的方法: public static LinkedListTest ReadInFile(String path){ File
public static LinkedListTest ReadInFile(String path){
File file = new File(path);
LinkedListTest list = new LinkedListTest();
try {
Scanner scanner = new Scanner(file);
int count = 0;
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
StringTokenizer st = new StringTokenizer(line);
while (st.hasMoreTokens()){
list.insert(st.nextToken());
}
}
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return list;
}
以下是插入链接列表和打印链接列表的方法:
public class LinkedListTest implements LinkedList {
private Node head;
public LinkedListTest(){
head = new Node();
}
public void insert(Object x){
if (lookup(x) == false){
if (head.data == null)
head.data = x;
else{
/*
Node NewNode = new Node();
NewNode.data = x;
NewNode.next = head;
head = NewNode;
*/
//InsertLast
Node temp = head;
while (temp.next != null){
temp = temp.next;
}
Node NewNode = new Node();
NewNode.data = x;
NewNode.next = null;
temp.next = NewNode;
}
}
}
public void printList(){
Node temp = head;
while (temp.next != null){
System.out.print(temp.data + " ");
temp = temp.next;
}
System.out.print(temp.data + " ");
}
}
我解决了。我的insert函数中的lookup子句把它搞砸了