Помещение текста из txt файла в связанный список

Я пытаюсь токенизировать строки числовых выражений в связанный список для проекта CS. Я должен использовать свой собственный связанный список, который я создал в предыдущей лабораторной работе.

Я токенизирую каждое число и оператор строки и вставляю каждый токен в узел в моем связанном списке по мере их токенизации. Когда я кодирую программу для печати каждого токена по мере его токенизации, каждый токен печатается. Но когда я говорю ему распечатать связанный список, содержащий каждый токен в качестве узла, некоторые операторы отсутствуют. Я не знаю, в чем причина такого поведения.

Ниже приведен метод, который создает связанный список, содержащий каждый токен:

    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 + " ");
}
}

person Christian Baker    schedule 22.02.2014    source источник


Ответы (1)


Я решил это. Предложение поиска в моей функции вставки все испортило.

person Christian Baker    schedule 22.02.2014