所以我试图从一个名为 directory.txt 的文件中将名称添加到一个新列表中,该文件有 1000 个包含名字、姓氏和电话号码的对象;像这样的东西(道奇,尼克 765-123-2312)。当我在没有“for循环”的情况下运行下面的程序时,我可以成功地从 .txt 文件中添加第一个对象并将其打印出来。但是,当我添加一个 for 循环时,例如 for(int i =0; i < 1000; i++),它出于某种原因跳到列表的末尾并在第一个位置输入 1000 个对象并跳过其余部分。我想不通!谢谢您的帮助。
新代码;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;
import bsu.edu.cs121.names.Names;
import bsu.edu.cs121.quickSort.QuickSort;
public class NameTester {
public static void main(String[] args)throws FileNotFoundException {
ArrayList<Names> namelist= new ArrayList<Names>();
Scanner file = new Scanner(System.in);
System.out.println("Please enter the name of the phone book file: ");
String newFile = file.next();
File inputFile = new File("/Users/Latif/Desktop/workspace/CS121 Project4/src/" + newFile);
Scanner readFile = new Scanner(inputFile);
while (readFile.hasNextLine()){ //start while
String lastName = readFile.next();
String firstName = readFile.nextLine();
String phoneNumber = readFile.nextLine();
namelist.add(new Names(firstName, lastName, phoneNumber));
}
QuickSort newSort = new QuickSort(namelist);
System.out.println(namelist.get(1) + " " + namelist.get(2));
}
}