基本 I/O
外觀
| 主題: |
| 導航 使用者介面 主題: |
本節介紹用於 **基本輸入輸出** 的 Java 平臺類。但在開始之前,我們需要對程式設計中的輸入輸出含義有一個具體的理解。為了理解這個概念,可以將 Java 平臺視為一個 *系統*。
Java 平臺是一個隔離的實體,在你的作業系統中是一個空間,該系統外部的一切都是它的 *環境*。系統與其環境之間的互動是一種雙向對話。系統要麼接收來自其環境的訊息,要麼將自身的訊息傳遞給環境。當系統接收到訊息時,它被稱為 *輸入*,它的反面是 *輸出*。總體而言,這種通訊被稱為 *輸入/輸出*,簡稱為 *I/O*。
以下章節旨在介紹 Java 中的基本輸入輸出,包括從鍵盤讀取文字輸入,將文字輸出到顯示器,以及從檔案系統讀取/寫入檔案。更多使用圖形和 圖形使用者介面 (GUI) 程式的更高階的使用者互動將在後面的 Swing 部分介紹。
I/O 有兩個包:較舊的 java.io 包(不支援符號連結)和較新的 java.nio(“新 io”)包,它在 java.nio.file 中改進了異常處理。
寫入螢幕非常容易,可以使用以下兩種方法之一實現
|
| ||||
|
|
從 5.0 版本開始,Java 在 java.util 包中提供了一個名為 Scanner 的類,簡化了鍵盤輸入。
程式碼部分 9.3:使用 Scanner 輸入
Scanner kbdIn = new Scanner(System.in); // Instantiating a new Scanner object
System.out.print("Enter your name: "); // Printing out the prompt
String name = kbdIn.nextLine(); // Reading a line of input (until the user hits enter) from the keyboard
// and putting it in a String variable called name
System.out.println("Welcome, " + name); // Printing out welcome, followed by the user's name
|
螢幕上顯示 請輸入您的姓名:John Doe 歡迎您,John Doe |
或者,可以編寫一個方法來處理鍵盤輸入。
程式碼部分 9.4:行讀取器
public String readLine() {
// Creates a new BufferedReader object
BufferedReader x = new BufferedReader(new InputStreamReader(System.in));
// Reads a line of input and returns it directly
return x.readLine();
}
|
請注意,以上程式碼不應在大多數應用程式中使用,因為它每次執行方法時都會建立新的物件。更好的選擇是建立一個單獨的類檔案來處理鍵盤輸入。
