Java程序開發過程當中,須要從鍵盤獲取輸入值是常有的事。C語言提供scanf()函數,C++提供cin()獲取鍵盤輸入值。那麼Java有什麼解決方法呢?html
package pkg2020華南虎; import java.io.*; /** * * @author yl */ public class JavaInput { public static void main(String[] args) throws IOException { System.out.println("Enter a Char:"); char i=(char)System.in.read(); System.out.println("Your char is:"+i); } }
雖然此方式實現了從鍵盤獲取輸入的字符,可是System.out.read()只能針對一個字符的獲取,同時,獲取進來的變量類型只能是char。當輸入數字時,還須要轉換類型。java
package pkg2020華南虎; import java.io.*; /** * * @author yl */ public class JavaInput02 { 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); } }
package pkg2020華南虎; import java.util.Scanner; /** * * @author yl */ public class JavaInput03 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("Input your name:"); String name=sc.nextLine(); System.out.println("Input your age:"); int age=sc.nextInt(); System.out.println("Input your salary:"); double salary=sc.nextDouble(); System.out.println("Your information is follow as:"); System.out.println("Name:"+name+"\n"+"Age:"+age+"\n"+"Salary:"+salary); } }
在Java中,next()方法是不接收空格的,在接收到有效數據前,全部的空格或者tab鍵等輸入被忽略,如有有效數據,則遇到這些鍵退出。nextLine()能夠接收空格或者tab鍵,其輸入應該以enter鍵結束。(這部分不太理解!!!)函數
最後附上源博客的連接:Constructor的博客spa