在JDK 6中新增了java.io.Console類,可以讓您取得字節為基礎的主控台裝置,例如,您可以藉由System新增的console()方法取得標準輸入輸出裝置的Console對象,並利用它來執行一些簡單的主控台文字輸入輸出,例如:
ConsoleDemo.java
import java.io.Console;public class ConsoleDemo { public static void main(String[] args) { System.out.print("請輸入名稱:"); Console console = System.console(); String name = console.readLine(); System.out.println("您輸入的名稱…" + name); }}執行結果:
請輸入名稱:Justin
您輸入的名稱…Justin
對於主控台下的密碼輸入,Console類還提供有一個簡單readPassword()方法,在讀取使用者於主控台下輸入的密碼時,不會顯示使用者輸入的字節(這在過去要用其它麻煩的方式來達到),例如:
ConsoleDemo.java
import java.io.Console;public class ConsoleDemo { public static void main(String[] args) { System.out.print("請輸入名稱:"); Console console = System.console(); String name = console.readLine(); char[] password = console.readPassword("請輸入密碼:"); System.out.println("您輸入的名稱…" + name); System.out.println("您輸入的密碼…" + new String(password)); }}執行結果:
請輸入名稱:Justin
請輸入密碼:
您輸入的名稱…Justin
您輸入的密碼…123456
Console類也提供有reader()與writer()方法,可以傳回Reader、 Writer 對象,以便進行其它的IO處理,例如結合Scanner一同使用:
Scanner scanner = new Scanner(System.console().reader());
要注意的是,以javaw所執行的應用程序,沒有主控台(Console),也就取不到Console對象(例如在Eclipse中)。
以上就是本文關於Java中Console對象實例代碼的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!