请看一下我的代码。
import java.util.*;
import java.io.*;
public class LibraryDriver {
public static void main(String[] theArgs) {
String theAuthor = "";
String theTitle = "";
Scanner input = null;
PrintStream output = null;
try {
input = new Scanner(new File("LibraryIn1.txt"));
output = new PrintStream(new File("LibraryOut.txt"));
} catch (Exception e) {
System.out.println("Difficulties opening the file! " + e);
System.exit(1);
}
ArrayList < String > authors = new ArrayList < String > ();
ArrayList < Book > books = new ArrayList < Book > ();
while (input.hasNext()) {
// Read title
theTitle = input.nextLine();
// Read author(s)
theAuthor = input.nextLine();
authors = new ArrayList < String > (getAuthors(theAuthor));
// Insert title & author(s)into a book
// Add this book to the ArrayList<Book> of books
books.add(new Book(theTitle, authors));
authors.clear();
}
// Instantiate a Library object filled with the books read thus far
// and write the contents of the library to the output file
Library lib = new Library(books);
output.println("PRINTS INITIAL BOOK LIST:");
output.println(lib);
// Sort the current contents of the library
lib.sort();
// and write the contents of the sorted library to the output file
output.println("nPRINTS SORTED BOOK LIST:");
output.println(lib);
// Close the first input file and open the second input file.
// Read the titles and authors from the second input file,
// add them to the library, and write the contents of the
// library to the output file.
input.close();
try {
input = new Scanner(new File("LibraryIn2.txt"));
output = new PrintStream(new File("LibraryOut.txt"));
} catch (Exception e) {
System.out.println("Difficulties opening the file! " + e);
System.exit(1);
}
while (input.hasNext()) {
theTitle = input.nextLine();
theAuthor = input.nextLine();
authors = (getAuthors(theAuthor));
Book b = new Book(theTitle, authors);
lib.add(b);
}
output.println("nPRINT WITH NEW BOOK UNSORTED:");
output.println(lib);
// Sort the library and write it to the output file
lib.sort();
output.println("nPRINT ALL SORTED BOOK LIST:");
output.println(lib);
// The following tests the findTitles method, i.e. test
// the findTitles method by passing “Acer Dumpling” and
// then “The Bluff”:
// Write only the "Acer Dumpling" books to the output file
output.println("nPRINT ALL ACER DUMPLINGS:");
for (Book b: lib.findTitles("Acer Dumpling")) {
output.println(b);
}
// Write only the "The Bluff" books to the output file
output.println("nPRINT ALL THE BLUFFS:");
for (Book b: lib.findTitles("The Bluff")) {
output.println(b);
}
// Close all open files and end main.
input.close();
output.close();
}
// Header for method that separates author names and
// returns an ArrayList<String> containing the author names
public static ArrayList < String > getAuthors(String theAuthors) {
String[] temp = theAuthors.split("\*");
ArrayList < String > result = new ArrayList < String > (Arrays.asList(temp));
return result;
}
}
运行此程序后,输出文件只加载如下:
PRINT WITH NEW BOOK UNSORTED:
(the list of books' title and authors)
PRINT ALL SORTED BOOK LIST:
(the list of books' title and authors)
PRINT ALL ACER DUMPLINGS:
(the list of title with acer dumpling)
PRINT ALL THE BLUFFS:
(the list of title with the bluff)
前两个部分"打印初始书目"one_answers"打印排序书目"都不见了,但我不知道如何弄清楚。谢谢
您问过不知道如何解决这个问题。
我的答案如下:
- 在eclipse中导入您的项目
- 将调试点放在代码的多个点上
- 使用eclipse中的bug图标来调试类文件
- 一旦它到达您设置的调试指针,使用F6逐行调试它,或者您可以使用F5跳转到该方法
您也可以参考下面提到的链接:
https://www.eclipse.org/community/eclipse_newsletter/2017/june/article1.php