1. 輸出:
輸出是一件非常容易的事情
調用System.out.println()即可
2. 輸入:
要想通過控制檯輸入。首先需要構造一個Scanner對象。並與“標準輸入流“System.in 關聯.
Scanner in = new Scanner(System.in);
System.out.print("What is your name?");
String name = in.nextLine();
在這裏,使用nextLine方法是因爲在輸入行中有可能包含空格。要想讀取一個單詞,就調用
String firstName = in.next();
讀取一個整數,就調用nextInt方法.
與此類似,要想讀取下一個浮點數,就調用nextDouble方法
Scanner類定義在java.util包中。故需要在程序的最開始加上一行 import java.util.*; 導入包
一個例子:
打印一條如下格式的消息:
/**
* 題目。詢問用戶姓名和年齡,然後打印一條如下格式的消息
* Hello, Cay. Next year, you'll be 52;
*
*/
//類中將要使用Scanner類。它被包含在以下包中。故先導入
import java.util.*;
public class ScannerInput {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
//詢問用戶姓名
System.out.print("What is your name? ");
String name = in.nextLine();
//詢問用戶年齡
System.out.print("How old are you? ");
int age = in.nextInt();
//顯示用戶信息到控制檯
System.out.println("Hello, " + name + ". Next year, you'll be " + (age +1));
}
}
如果從控制檯讀取密碼,可以使用如下代碼段
在開關需要導入包java.io.Console
Console cons = System.console();
String username = cons.readLine("User name: ");
char[] password = cons.readPassword("Password: ");
StringBuilder builder = new StringBuilder();
for(int i=0; i<password.length; i++)
{
builder.append(password[i]);
}
System.out.println("User Name is " + username + ", password is " + builder.toString() + ".");
注意,以上代碼段,無法在eclipse中運行。原因未知
API java.util.Scanner
Scanner (InputStream in) | 用給定的輸入流創建一個Scanner對象 |
String nextLine() | 讀取輸入的下一行內容 |
String next() | 讀取輸入的下一個單詞(以空格作爲分隔符) |
int nextInt() double nextDouble() |
讀取並轉換下一個表示整數或浮點數的字符序列 |
boolean hasNext() | 檢測輸入中是否還有其他單詞 |
boolean hasNextInt() boolean hasNextDouble() |
檢測是否還有表示整數或浮點數的下一個字符序列 |