在程式開發過程中,我們經常需要取得鍵盤中輸入的值,c語言給我們提供的scanf(),C 給我們提供的cin()取得鍵盤輸入值的現成函數。那java該怎麼取得鍵盤中輸入的數值呢,下面我們來為大家介紹三種方法。
方法一:從控制台接收一個字符,然後將其列印出來
#import java.io.*;public static void main(String [] args) throws IOException{ System.out.print("Enter a Char:"); char i = (char) System.in.read(); System.out.println("your char is :"+i); }
雖然此方式實作了從鍵盤取得輸入的字符,但是System.out.read()只能針對一個字符的獲取,同時,獲取進來的變量的類型只能是char,當我們輸入一個數字,希望得到的也是一個整數變量的時候,我們還得修改其中的變數類型,這樣就顯得比較麻煩。
方法二:從控制台接收一個字串,然後將其列印出來。在這個題目中,我們需要用到BufferedReader類別和InputStreamReader類別
import java.io.*;public static void main(String [] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = null; System.out.println("Enter your value:"); str = br.readLine(); System.out.println("your value is :"+str); }
這樣我們就能取得我們輸入的字串。
方法三:這個方法我認為是最簡單,最強大的,就是用Scanner類別
import java.util.Scanner;public static void main(String [] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入你的姓名:"); String name = sc.nextLine(); System.out.println("请输入你的年龄:"); int age = sc.nextInt(); System.out.println("请输入你的工资:"); float salary = sc.nextFloat(); System.out.println("你的信息如下:"); System.out.println("姓名:"+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary); }
如果需要輸入一行內用空格分開的數據,則:
package iotest; import java.util.Scanner; public class ScannerTest { public static void main(String[] args) { System.out.println("请输入5个整数,以空格分开,以回车结束:"); try{ // 创建Scanner对象 Scanner scanner = new Scanner(System.in); // 用于保存5个数字的数组 int a[] = new int[5]; for(int i=0;i<5;i++){ // 把字符串转换为数字 a[i] = scanner.nextInt(); System.out.println(a[i]); } }catch(Exception e){ System.out.println("异常:"+e.toString()); } } }
以上兩段程式碼已經表明,Scanner類不管是對於字符串還是整型數據或者float類型的變量,只需做一點小小的改變,就能夠實現功能!無疑他是最強大的!
但是使用Scanner時需要注意的nextLine()後面存在nextInt()的情形,
更多相關知識請點選:java教學
以上是java取得鍵盤輸入的值的詳細內容。更多資訊請關注PHP中文網其他相關文章!