赞
踩
- String str = myScanner.nextLine();
- String str = myScanner.next();
- char ch = myScanner.next().charAt(0);
- byte a1 = myScanner.nextByte();
- short a2 = myScanner.nextShort();
- int a3 = myScanner.nextInt();
- long a4 = myScanner.nextLong();
- float a5 = myScanner.nextFloat();
- double a6 = myScanner.nextDouble();
- boolean a7 = myScanner.nextBoolean();
-
- next()无法读取空格,即遇到空格便结束读取。
- nextLine()以回车(enter)为结束的标志。
- 如果先使用next()再使用nextLine(),后者会自动读取next()录入字符时用户输入的回车及空格+空格后的字符(如果有的话)
Scanner myScanner = new Scanner(System.in); System.out.println("请输入一个字符串给next()"); String s1 = myScanner.next(); System.out.println("请输入一个字符串给nextLine()"); String s2 = myScanner.nextLine(); System.out.println("s1是:"+s1); System.out.println("s2是:"+s2);
可见nextLine()的确先读取了Hello hzy后的回车(这导致我们无法输入给nextLine())后读取了Hello后的空格和hzy。为了解决这种情况,我们可以在next()后使用两个nextLine来接收,第一个用来当作“垃圾桶”即可。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。