私は最近 LinkedList の使用方法を学んでおり、すべて正常に機能しましたが、(メソッドを使用せずに) 直接的なアプローチとして使用すると、多くのエラーが発生しました。
私がやりたいことは、ファイル テキストを読み取り、それを LinkedList に保存することです。
これは私がこれまでに持っているものです:
public static void main(String[] args) {
Node<String> workflowHead = null;
Node<String> workflowTail = null;
try {
int i = 0;
Scanner in = new Scanner(new FileInputStream("workflow.txt"));
while (in.hasNextLine()) {
if (i == 0) {
workflowHead = new Node<String>(in.nextLine());
workflowTail = workflowHead;
}
else {
workflowTail.next = new Node<String>(in.nextLine());
workflowTail = workflowTail.next;
}
i++;
}
in.close();
} catch (FileNotFoundException e) {
System.out.println(e.getMessage());
}
}
上記は、メソッドを使用しない「直接アプローチ」の意味です。
では、メソッドを使用してこれらすべてを達成するにはどうすればよいでしょうか。
上記のコードは問題なく動作しますが、メソッドを使用するコードに変換する必要があります。
私はこのように試しましたが、惨めに失敗します:
public static void main(String[] args) {
Node<String> workflowHead = null;
Node<String> workflowTail = null;
workflowHead.read(workflowHead, workflowTail);
} //End of main
public class Method {
public void read(Object head, Object tail) {
try {
int i = 0;
Scanner in = new Scanner(new FileInputStream("workflow.txt"));
while (in.hasNextLine()) {
if (i == 0) {
head = new Node<String>(in.nextLine());
tail = head;
}
else {
tail.next = new Node<String>(in.nextLine());
tail = tail.next;
}
i++;
}
in.close();
} catch (FileNotFoundException e) {
System.out.println(e.getMessage());
}
}
私は何を間違えましたか?