程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JAVA基礎培訓(9),控制台鍵盤輸入(System.in)

JAVA基礎培訓(9),控制台鍵盤輸入(System.in)

編輯:關於JAVA

從鍵盤輸入是一個很重要的功能,這裡給出了個人推薦的方式,用Scanner讀取輸入數 據

package lession9;
import java.io.InputStream;
import java.util.Scanner;
/**
* 老紫竹JAVA基礎培訓(9),控制台鍵盤輸入(System.in)。
*
* @author 老紫竹 JAVA世紀網(java2000.net)
*
*/
public class Lession9 {
 public static void main(String[] args) {
  // 默認情況下,系統的標准輸入是鍵盤
  // 屬於標准的輸入流
  InputStream is = System.in;
  // 一般不直接對輸入流操作
  // 而是封裝成其它的工具輔助類,比如Scanner
  Scanner scan = new Scanner(is);
  // 這段代碼用來讀取鍵盤輸入的字符串
  System.out.print("請輸入你的姓名:");
  String name = scan.next();
  System.out.println("您的姓名為:" + name);
  // 這段代碼用來讀取鍵盤輸入的整數
  // 請注意,你需要輸入合法的整數
  System.out.print("請輸入你的年齡:");
  int age = scan.nextInt();
  System.out.println("您的年齡為:" + age);
  // 這段代碼用來讀取鍵盤輸入的浮點數
  // 請注意,你需要輸入合法的整數
  System.out.print("請輸入你的身高(米):");
  float height = scan.nextFloat();
  System.out.println("您的身高為:" + height + "米");
 }
}

測試,

1 將整數的輸入數字,輸入比價大的數字看看,比如12位長度的數字

2 將整數,換成long 類型的,再測試12位長度的數字看看

3 在數字輸入時,輸入字母看看運行結果

4 以上測試對身高同樣進行,對應的是double類型

5 對於超長的數字,使用nextBigInteger和 nextBigDecimal 進行讀取,對應的處理 為為 BigInteger和 BigDecimal

小結:

1 使用Scanner進行鍵盤的輸入操作

2 使用next讀取一行文本數據

3 用nextXXX讀取指定類型的數據

4 如果是數字,需要注意輸入格式,不能超出范圍

5 數字也不能輸入字母

6 進行異常處理

// 這段代碼用來讀取鍵盤輸入的整數
  // 請注意,你需要輸入合法的整數
  int age = Integer.MIN_VALUE;
  while (age == Integer.MIN_VALUE) {
   System.out.print("請輸入你的年齡:");
   try {
    age = scan.nextInt();
   } catch (InputMismatchException ex) {
    System.out.println("請輸入合法的整數");
    scan.nextLine(); // 忽略掉這一行
   }
  }
  System.out.println("您的年齡為:" + age);

運行效果

這次就說到這裡了,其實有很多的方法可以封裝InputStream,比如BufferedReader 也 不錯的。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved