黑马程序员——Scanner中nextLine获取字符串时的问题与解决方案
来源:互联网 发布:人皮唐卡 知乎 编辑:程序博客网 时间:2024/05/17 01:07
------- android培训、java培训、期待与您交流! ----------
在使用Scanner中的nextLine时遇到如下问题
class Demo {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("输入一个整数:")int i = sc.nextInt();System.out.println("输入一个字符串:")String line = sc.nextLine();//运行时直接跳过字符串的输入直接执行下一条语句System.out.println("i = " + i + ",line = " + line);}}
原因分析:
当执行sc.nextInt()语句时,键盘输入完毕,结果会在后面加上\r\n.比如键盘录入4时,最后会将4\r\n返回,而sc.nextLine()方法接收字符时便将\r\n给接收过来,此方法以\r\n来判断结束,所以sc.nextLine()接收到字符\r\n时便结束输入。
解决方案:
1.先获取一个数值后,再创建一个新的键盘录入对象获取字符串
class Demo {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("输入一个整数:")int i = sc.nextInt();sc = new Scanner(System.in);//此方法浪费资源,不推荐使用System.out.println("输入一个字符串:")String line = sc.nextLine();System.out.println("i = " + i + ",line = " + line);}}
class Demo {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("输入一个整数:")String numstr = sc.nextLine();int i = Integer.parseInt(numstr);//转换成对应的int类型System.out.println("输入一个字符串:")String line = sc.nextLine();System.out.println("i = " + i + ",line = " + line);}}
0 0
- 黑马程序员——Scanner中nextLine获取字符串时的问题与解决方案
- Scanner 中 next()与nextLine()的用法
- Scanner中next()与nextLine()的区别
- Scanner类中nextLine()问题
- Scanner 的next() 与nextline()
- scanner.next()与scanner.nextLine()的区别
- Java学习笔记1——关于Scanner类中nextDouble、nextInt、……等方法与nextLine方法联用的问题
- JAVA中Scanner类中,next()与nextLine()的异同
- java中Scanner类中next()与nextLine()的区别
- Java中Scanner的nextLine方法的问题
- Scanner类 next与nextLine方法的使用问题
- java中scanner.nextint和nextline的问题
- Scanner中next*(), next(), nextLine()混用的问题
- 小心:Scanner中关于next()、nextInt()和nextLine()的问题
- Java中Scanner的nextLine()与next()的区别
- Scanner 的next()或nextInt()与nextLine()连续调用时出现的问题
- Scanner的next与nextLine方法
- Scanner中的next()与nextLine()的区别
- 直观解释-小波变换(二)
- Linux笔记-结合nohup执行Python脚本时同步输出结果
- C++11 并发指南一(C++11 多线程初探)
- 40节穷举课后小明借书and水仙花数
- Java注解
- 黑马程序员——Scanner中nextLine获取字符串时的问题与解决方案
- 改写世界的现实编辑器:Reality Editor
- hdu 1029 Ignatius and the Princess IV【stl】
- Linux下查看进程和线程
- 新手如何向大数据领域迈进
- 加盐密码哈希:如何正确使用
- 年末(2015)-开篇
- PHP的命名空间
- 软解码和硬解码的区别