BufferedInputStream示例
BufferedOutputStream示例
BufferedReader實例
BufferedWriter示例
ByteArrayInputStream示例
Java ByteArrayOutputStream示例
Java CharArrayReader示例
Java CharArrayWriter示例
Java Console類示例
Java DataInputStream類型
Java DataOutputStream實例
Java Externalizable實例
Java File實例
FileDescriptor示例
Java FileInputStream示例
FileOutputStream示例
Java FilePermission示例
Java FileReader示例
Java FileWriter示例
Java FilterInputStream示例
Java FilterOutputStream示例
Java FilterReader示例
Java FilterWriter示例
Java Scanner類
要從標準輸入讀取數字,必須將其讀取爲字符串並將其解析爲數字。java.util
包中的Scanner
類根據模式讀取並解析基本類型和字符串中的文本。文本源可以是InputStream
,文件,String
對象或可讀對象。
可以使用Scanner
對象從標準輸入System.in
中讀取原始類型值。以下代碼說明了如何使用Scanner
類構建一個小型計算器來執行加,減,乘和除。
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
System.out.println("type something like: 1+3");
Scanner scanner = new Scanner(System.in);
double n1 = Double.NaN;
double n2 = Double.NaN;
String operation = null;
try {
n1 = scanner.nextDouble();
operation = scanner.next();
n2 = scanner.nextDouble();
double result = calculate(n1, n2, operation);
System.out.printf("%s %s %s = %.2f%n", n1, operation, n2, result);
}
catch (Exception e) {
System.out.println("An invalid expression.");
}
}
public static double calculate(double op1, double op2, String operation) {
switch (operation) {
case "+":
return op1 + op2;
case "-":
return op1 - op2;
case "*":
return op1 * op2;
case "/":
return op1 / op2;
}
return Double.NaN;
}
}
上面的代碼生成以下結果。
type something like: 1+3
12
+
34
12.0 + 34.0 = 46.00