Java中獲取鍵盤輸入值的三種方法(轉)


轉載:http://soft.chinabyte.com/database/191/12466191.shtml

程序開發過程中,需要從鍵盤獲取輸入值是常有的事,但Java它偏偏就沒有像c語言給我們提供的scanf(),C++給我們提供的cin()獲取鍵盤輸入值的現成函數!Java沒有提供這樣的函數也不代表遇到這種情況我們就束手無策,請你看以下三種解決方法吧:

以下將列出幾種方法:

方法一:從控制台接收一個字符,然后將其打印出來

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類

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類

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);
}

  

這段代碼已經表明,Scanner類不管是對於字符串還是整型數據或者float類型的變量,只需做一點小小的改變,就能夠實現功能!無疑他是最強大的!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM