1. 程式人生 > 實用技巧 >Java 基礎(從鍵盤獲取變數)

Java 基礎(從鍵盤獲取變數)

從鍵盤獲取變數

在 Java 中使用 Scanner 類從鍵盤獲取不同型別的變數,步驟:

  1. 導包: import java.util.Scanner;
  2. Scanner 的例項化 Scanner scan = new Scanner(System.in);
  3. 呼叫 Scanner 類的相關方法(next()/nextXxx()),來獲取指定型別的變數

注意:
需要根據相應的方法,來輸入指定型別的值。如果輸入的資料型別與要求的型別不匹配時,會報異常: InputMisMatchException 導致程式終止。

class ScannerTest{
	public static void main(String[] args){
		Scanner scan = new Scanner(System.in);
		
		System.out.println("請輸入你的姓名:");
		String name = scan.next();
		System.out.println(name);
		
		System.out.println("請輸入你的年齡:");
		int age = scan.nextInt();
		System.out.println(age);
		
		System.out.println("請輸入你的體重:");
		double weight = scan.nextDouble();
		System.out.println(weight);
		
		System.out.println("是否結婚?(true/false)");
		boolean isMarry = scan.nextBoolean();
		System.out.println(isMarry);
		
		System.out.println("請輸入你的性別:(男/女)");
		String gender = scan.next();
		char genderChar = gender.charAt(0);   //獲取索引為0位置上的字元
		System.out.println(genderChar);
	}
}

針對 if-else 條件表示式。

  1. 如果多個條件表示式之間是"互斥"關係(或沒有交集的關係),哪個判斷和執行語句宣告在上面還是下面,無所謂。
  2. 如果多個條件表示式之間有交集的關係,需要根據實際情況,考慮清楚應該將哪個結構宣告在上面。
  3. 如果多個條件表示式之間有包含的關係,通常情況下,需要講範圍小的宣告在範圍大的上面。否則,範圍小的就沒有機會執行。
import java.util.Scanner;

class IfTest2 {
	public static void main(String[] args){
		Scanner scan = new Scanner(System.in);
		
		System.out.println("請輸入小鵬的期末成績: (0-100)");
		int score = scan.nextInt();
		
		if(score == 100){
			System.out.println("獎勵一輛BMW");
		} else if ( score > 80 ){                // score > 80 && score <= 99
			System.out.println("獎勵一臺 Iphone 手機");
		} else if ( score > 60 ){                // score > 60 && score <=80
			System.out.println("獎勵一臺 ipad");
		} else {
			System.out.println("什麼獎勵也沒有");
		}
	}
}
import java.util.Scanner;

class IfTest3 {
	public static void main(String[] args){
		
		Scanner scanner = new Scanner(System.in);
		
		System.out.println("請輸入第一個整數");
		int num1 = scanner.nextInt();
		System.out.println("請輸入第二個整數");
		int num2 = scanner.nextInt();
		System.out.println("請輸入第三個整數");
		int num3 = scanner.nextInt();
	
		if(num1 >= num2){
			if(num3 >= num1){
				System.out.println(num2 + "," + num1 + "," + num3);
			} else if( num3 <= num2){
				System.out.println(num3 + "," + num2 + "," + num1);
			} else {
				System.out.println(num2 + "," + num3 + "," + num1);
			}
		} else {
			if(num3 >= num2){
				System.out.println(num1 + "," + num2 + "," + num3);
			} else if( num3 <= num1){
				System.out.println(num3 + "," + num1 + "," + num2);
			} else {
				System.out.println(num1 + "," + num3 + "," + num2);
			}
		}
	
		
	}
}