java的Scanner类提供了nextInt、nexFloat、nextDouble等方法,可以像类似C语言的scanf那样读取指定类型的数字。(推荐:java视频教程)
首先定义一个Scanner对象:
Scanner sn = new Scanner(System.in);
用sn.nextInt读取整型数,注意如果输入的不是整形数则该函数会抛出InputMismatchException异常,应予以捕获。
System.out.print("请输入一个整数:"); try{ intVal = sn.nextInt(); System.out.println("你输入了:" + intVal); } catch(InputMismatchException e){ System.out.println("必须输入整数!"); }
用sn.nextFloat读取单精度浮点数,如果输入的不是数字则也会抛出InputMismatchException异常,应予以捕获。
System.out.print("请输入一个浮点数:"); try{ floatVal = sn.nextFloat(); System.out.println("你输入了:" + floatVal); } catch(InputMismatchException e){ System.out.println("必须输入数!"); }
用sn.nextDouble读取双精度浮点数,操作与单精度类似。
System.out.print("请输入一个浮点数:"); try{ doubleVal = sn.nextDouble(); System.out.println("你输入了:" + doubleVal); }catch(InputMismatchException e) { System.out.println("必须输入数!"); }
流使用完毕后应予以关闭:sn.close();
更多java知识请关注java基础教程栏目。