1 程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧: 2 3 以下将列出几种方法: 4 5 方法一:从控制台接收一个字符,然后将其打印出来 6 7 public static void main(String [] args) throws IOException{ 8 9 System.out.print(“Enter a Char:”); 10 11 char i = (char) System.in.read(); 12 13 System.out.println(“your char is :”+i); 14 15 } 16 17 } 18 19 虽然此方式实现了从键盘获取输入的字符,但是System.out.read()只能针对一个字符的获取,同时,获取进来的变量的类型只能是char,当我们输入一个数字,希望得到的也是一个整型变量的时候,我们还得修改其中的变量类型,这样就显得比较麻烦。 20 21 方法二:从控制台接收一个字符串,然后将其打印出来。在这个题目中,我们需要用到BufferedReader类和InputStreamReader类 22 23 public static void main(String [] args) throws IOException{ 24 25 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 26 27 String str = null; 28 29 System.out.println(“Enter your value:”); 30 31 str = br.readLine(); 32 33 System.out.println(“your value is :”+str); 34 35 } 36 37 这样我们就能获取我们输入的字符串。 38 39 方法三:这种方法我认为是最简单,最强大的,就是用Scanner类 40 41 public static void main(String [] args) { 42 43 Scanner sc = new Scanner(System.in); 44 45 System.out.println(“请输入你的姓名:”); 46 47 String name = sc.nextLine(); 48 49 System.out.println(“请输入你的年龄:”); 50 51 int age = sc.nextInt(); 52 53 System.out.println(“请输入你的工资:”); 54 55 float salary = sc.nextFloat(); 56 57 System.out.println(“你的信息如下:”); 58 59 System.out.println(“姓名:”+name+“\n”+“年龄:”+age+“\n”+“工资:”+salary); 60 61 } 62 63 这段代码已经表明,Scanner类不管是对于字符串还是整型数据或者float类型的变量,只需做一点小小的改变,就能够实现功能!无疑他是最强大的!