java - 在这种情况下如何使用 java-util-scanner 处理换行符?

标签 java input java.util.scanner

我有一个简单的作业,我正在制作一个简单的 UI(不是 GUI),并且我正在使用扫描仪进行输入。

我想读取 3 个字符串(姓名、地址、社会安全号码)

如果用户不插入任何内容,只需按 Enter 键,我的代码就会中断。我得到了更多字符串,而不是我需要的 3 个字符串,但它们没有匹配。

Scanner input = new Scanner(System.in);
if (input.hasNext()) {
    name = input.nextLine(); 
} 
Scanner input = new Scanner(System.in);
if (input.hasNext()) {
    address = input.nextLine(); 
} 
Scanner input = new Scanner(System.in);
if (input.hasNext()) {
    ssnumb = input.nextLine(); 
} 

因此,如果用户按 Enter 键,创建一个新行字符,输入就会溢出。我怎样才能避免这种情况或消除空行?

示例:

输入

尼克

火星

一些数字

我会:

名称:

地址:尼克

社会安全号码:火星

最佳答案

类似这样的事情:

Scanner input = new Scanner(System.in);
while(!input.next().isEmpty()) { // only when you enter literal string 
//do your scanner stuff here
}

关于java - 在这种情况下如何使用 java-util-scanner 处理换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13935576/

相关文章:

java - Apache 公共(public) csv

python - 从 Python 中的输入创建元组

javascript - 使用JavaScript的submit()函数时如何运行HTML5表单验证?

java - 未找到类型扫描仪

java - 构造函数错误 "call to this must be first statement in constructor"

java - 分割一个sql结果集,然后使用数组的每一部分进行查询

MySQL 使用现有表创建函数语句

java - 扫描仪需要更多字符?

java - 更新了 util.scanner 重复方法

java - 如何使用 ardulink 映射 Arduino 引脚?