如何在同一行输入多个数值(Java Scanner 多值单行输入教程)

心靈之曲

心靈之曲

2026-01-03

933人浏览

原创

如何在同一行输入多个数值(Java Scanner 多值单行输入教程)

本文讲解如何使用 java 的 scanner 类实现多个数值在同一行输入(如数量与单价并排输入),避免默认换行导致的格式错乱,并提供安全、健壮的输入处理方案。

在 Java 控制台程序中,Scanner.nextInt() 和 Scanner.nextDouble() 等方法不会消费输入末尾的换行符( ),且它们默认以空白字符(空格、制表符、回车)为分隔符。因此,只要用户在一行内用空格或 Tab 分隔多个值,Scanner 就能正确读取——无需额外换行或特殊处理。

✅ 正确做法:保持 System.out.print() 不换行,引导用户在同一行输入多个值

修改你的代码如下:

System.out.print("Enter the quantities and price of " + phone1 + ": ");
qty = sc.nextInt();     // 用户输入:1000 1399.99 ← 两个值在同一行,用空格分隔
price = sc.nextDouble(); // Scanner 自动跳过中间空白,读取下一个数值

运行效果:

Java JDK 25
Java JDK 25

Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。

下载
Enter the quantities and price of iPhone 10: 1000 1399.99

⚠️ 重要注意事项:

  • 不要在 nextInt() 后调用 sc.nextLine() 再读 nextDouble() —— 这会误吞掉用户输入的换行符,导致后续输入异常;
  • 确保用户严格按空格/TAB分隔输入(如 10001399.99),否则 nextDouble() 会抛出 InputMismatchException;
  • 更健壮的写法(推荐用于生产环境):统一用 nextLine() 读整行,再用 String.split() 解析:
System.out.print("Enter the quantities and price of " + phone1 + ": ");
String line = sc.nextLine().trim();
String[] parts = line.split("\s+", 2); // 最多切两段,防止价格含空格时报错
if (parts.length >= 2) {
    qty = Integer.parseInt(parts[0]);
    price = Double.parseDouble(parts[1]);
} else {
    System.err.println("Error: Please enter quantity and price separated by space.");
}

? 小技巧:若想提升用户体验,可在提示语末尾加一个显眼分隔符,例如:

System.out.print("Enter quantity and price for " + phone1 + " (e.g., 1000 1399.99): ");

总结:Java Scanner 天然支持单行多值输入,关键在于理解其以空白符分词的机制,并合理设计提示语与输入校验逻辑——既简洁高效,又具备容错能力。

Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end='\n', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.27

1120

5

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

2026.02.03

125

24

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.02

2839

3

火山引擎API接入教程
火山引擎API接入教程

火山引擎API接入适合需要在应用、脚本、后台服务或AI工具中调用火山引擎能力的开发者参考。本专题整理控制台入口、服务开通、API Key获取、接口地址配置、请求参数填写、调用测试、权限设置、额度查询和常见接口报错排查。

2026.08.04

0

10

火山引擎DeepSeek API调用教程
火山引擎DeepSeek API调用教程

火山引擎DeepSeek API适合需要在应用、脚本、智能体或AI编程工具中调用DeepSeek模型的开发者参考。本专题整理火山引擎控制台入口、模型服务开通、API Key获取、Base URL配置、模型名称填写、调用测试、额度查询和常见接口报错排查。

2026.08.04

0

10

火山引擎控制台操作教程
火山引擎控制台操作教程

火山引擎控制台中常用功能包括API密钥管理、模型调用配置、云资源查看、账单明细、用量统计和权限分配。本专题整理控制台基础操作、服务开通流程、Key创建与保存、费用消耗查看、子账号权限设置和调用失败排查,方便开发者完成日常管理。

2026.08.04

0

10

PDF与PPT格式转换操作方法及在线转换技巧
PDF与PPT格式转换操作方法及在线转换技巧

本专题聚焦 PDF 与 PPT 文件格式转换需求,整理 PDF 转 PPT 在线转换方法、PPT 批量转换 PDF 操作步骤、转换后格式错乱处理以及文档版式检查技巧。通过详细教程帮助用户掌握 PDF、PPT 双向转换方法,解决演示文稿制作、文件整理和办公格式转换中的常见问题,提高办公效率。

2026.07.31

112

6

PDF合并文件操作方法与在线批量合并技巧
PDF合并文件操作方法与在线批量合并技巧

本专题聚焦 PDF 文件合并与文档整理需求,整理多个 PDF 合并成一个文件、图片批量转换 PDF、合同附件合并发送以及在线 PDF 合并操作方法等实用教程。通过详细步骤介绍 PDF 合并流程、文件顺序检查技巧和免费在线合并方案,帮助用户快速整理零散文档,提高办公文件处理效率。

2026.07.31

86

8

PDF转Word在线转换与文档编辑处理方法
PDF转Word在线转换与文档编辑处理方法

本专题聚焦 PDF 转 Word 文件转换与办公文档处理需求,整理 PDF 在线转换成 Word、PDF 转可编辑 Word、PDF 文件格式转换操作步骤以及转换后版式错乱、图片无法编辑等常见问题解决方法。通过详细教程帮助用户快速掌握 PDF 转 Word 技巧,提高办公文件处理效率。

2026.07.31

87

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Java JDBC数据库连接官方教程
Java JDBC数据库连接官方教程

共0课时 | 0人学习

Java 26官方文档
Java 26官方文档

共0课时 | 0人学习