A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 徐朋威0716 中级黑马   /  2015-7-31 22:41  /  297 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1、Scanner注意问题
1、Scanner中方法        
          next() -- 查找并返回来自此扫描器的下一个完整标记。
          nextLine() -- 此扫描器执行当前行,并返回跳过的输入信息。
          next() 和 nextLine() 区别:
               next()会将空格键、Tab键或Enter键等视为分隔符或结束符,不能得到带空格的字符串。
                    Scanner scanner = new Scanner(System.in);
                    String string = scanner.next();
          while(true){
               System.out.println(string);
               string = scanner.next();
          }
               nextLine()仅将Enter键作为结束符,返回Enter键前的所有字符,可以得到带空格。
2、案例
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
String str = scanner.nextLine();
System.out.println(num + str);

          1、问题描述
               当录入的顺序依次是int String,并且分别使用nextInt()和nextLine()方法获取数据的时候,会接受不到String数据     
          2、解决办法
               1、在录入完int后重新创建一个新的Scanner对象
               2、用字符串接受,然后把字符串转成int   

2 个回复

倒序浏览
楼主高富帅,楼主v587
回复 使用道具 举报
霸气威武
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马