這個應用出現在華南銀行 104 年度新進人員甄試試題 甄試類別【代碼】:程式設計人員【G6331】專業科目:(1)邏輯推理;(2)程式語言:Java+SQL 中的一題。
題目是這樣的:
我怕我做的答案會有錯,所以買了高點向宏寫的程式設計歷屆試題精解來參考,碰到這一題連題目都錯的,再參考答案一看,真的暈倒了,向宏給的答案:
while(line != null) {
count++;
line = count + ” ” + line;
outputStream.writeline(line);
line = inputStream.readline();
}
答案是錯的,怎說呢?
我上機實作試了很久,最後還是努力找一下Java參考手冊,得出結果,我分享一下:
首先題目是錯的,BufferReader這個類別是自創的嗎?只聽過有BufferedReader類別,沒有BufferReader這個啊。
再來就是答案outputStream.writeline(line);這一行,PrintWriter 根本就沒有writeline方法,查了手冊後才知道只有print、printf、println跟write之類的方法,作者太會自創函式了,搞得我有點累了。
我自己做完的答案:
import java.io.*; public class T1 { public static void main(String[] args) { try { BufferedReader inputStream = new BufferedReader(new FileReader("original.txt")); PrintWriter outputStream = new PrintWriter(new FileOutputStream("numbered.txt")); int count = 0; String line = inputStream.readLine(); while(line != null) { count++; line = count + " " + line; outputStream.println(line); line = inputStream.readLine(); } inputStream.close(); outputStream.close(); } catch(IOException e) { System.out.println("error"); } } }
保證可以編譯執行。