当前位置: 首页 > 面试题库 >

nextLine()的问题;

戎泰
2023-03-14
问题内容

我正在尝试创建一个程序,在该程序中,用户可以使用扫描仪将值输入到数组中。

但是,当程序要求学生的近亲时,它不会让用户输入任何内容而直接结束程序。

下面是我完成的代码:

if(index!=-1)
    {
        Function.print("Enter full name: ");
        stdName = input.nextLine();

        Function.print("Enter student no.: ");
        stdNo = input.nextLine();

        Function.print("Enter age: ");
        stdAge = input.nextInt();

        Function.print("Enter next of kin: ");
        stdKin = input.nextLine();

        Student newStd = new Student(stdName, stdNo, stdAge, stdKin);
        stdDetails[index] = newStd;
    }

我试过使用next(); 但只会使用用户输入的第一个单词,这不是我想要的。反正有解决这个问题的方法吗?


问题答案:

当您按Enter键(换行符)时,会出现问题\nnextInt()仅使用整数,但跳过换行符\n。要解决此问题,您可能需要input.nextLine()在阅读后添加其他内容int,这可能会消耗\n

Function.print("Enter age: ");
stdAge = input.nextInt();
input.nextLine();.

// rest of the code


 类似资料:
  • 我有两个do-while循环用于进行自定义输入验证。问题是它会自动进入下一个do while循环。正确插入名称后,我必须放置一个新的下一行():name=scanner。nextLine() 我知道当光标停留在那里时,nextLine()会出现“小故障”,您必须调用nextLine()才能继续。资料来源:https://www.geeksforgeeks.org/why-is-scanner-sk

  • 一段时间以来,我一直在做一个作为拼字字典的编程作业。该程序接受用户的输入,并输出一个包含单词列表的文件,这取决于用户从菜单中请求的内容。我遇到的问题与Scanner.nextLine()有关。 我不是很清楚为什么,但由于某种原因,有时我必须按一次enter键,然后我的代码才会接受我的输入并将其存储为变量。本质上,我最终输入了两次输入。我尝试在代码周围插入Scanner.nextLine()以“占用

  • 问题内容: 我读了API的Java,因为我对之间的差异问题和。在API中,它表示: “使该扫描仪前进到当前行之后,并返回跳过的输入。此方法返回当前行的其余部分,但不包括末尾的任何行分隔符。该位置设置为下一行的开始。” 足够容易…跳过当前行,然后返回刚刚跳过的行。但是对于,它说: “将输入的下一个标记扫描为双精度。如果无法将下一个标记转换为有效的双精度值,则此方法将引发InputMismatchEx

  • 大家好,我三天前开始使用Java,我正在做一个小的银行账户项目,向用户询问他们的姓名和余额,并根据输入打印出一些消息。我的问题始于尝试验证用户名是否正确。不管怎样这是密码 //代码启动包com。首领 导入java.util.扫描仪; 公共课主课{ } 程序在要求用户输入是或否后终止,但我认为它在我第一次尝试时就起作用了。所以我不能输入那个字符串 此外,我在使用verifyName的输入来运行whi

  • 本文向大家介绍Java Scanner类用法及nextLine()产生的换行符问题实例分析,包括了Java Scanner类用法及nextLine()产生的换行符问题实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java Scanner类用法及nextLine()产生的换行符问题。分享给大家供大家参考,具体如下: 分析理解:Scanner sc = new Scanner(Sys

  • 在Java方面,我是一个业余爱好者,所以请原谅我的问题,如果它看起来很愚蠢:-P我有以下代码,旨在计算文件中的行数: 所以它很好,但我想将扫描仪重新用于其他目的,但nextLine已移动到文件的最后一行,我想将其重置回第一行。 (取而代之的是,我不得不使用另一台扫描仪来实现另一个目的,而在我看来,这似乎没有它应有的优雅。) 我肯定肯定有一种扫描仪方法可以将计数器重置为零? 谢谢 CJ