关于价格输入格式不正确的问题
老师,对于价格输入格式不正确的问题,那种方法能让我们重新输入一次,但是如果我确认商品编号和名字都没有错,只是价格不小心输错了,我只想重新输入价格而不是再把商品编号和名字再输一遍,应该咋处理?
26
收起
正在回答 回答被采纳积分+1
2回答
好帮手慕阿园
2020-09-04 11:47:32
同学你好,可以给输入价格的代码也添加一个while循环,输入错误后,重新执行该循环,继续输入价格
,直到输入正确再继续执行程序,代码如下
while (i < 3) {
System.out.println("请输入第" + (i + 1) + "条商品信息:");
System.out.println("请输入商品编号:");
goodsId = console.next();
// 判断商品编号id是否存在
if (goodsMap.containsKey(goodsId)) {
System.out.println("该商品编号已经存在!请重新输入!");
continue;
}
System.out.println("请输入商品名称:");
goodsName = console.next();
//添加循环
while (true) {
System.out.println("请输入商品价格:");
double goodsPrice = 0;
try {
goodsPrice = console.nextDouble();
} catch (java.util.InputMismatchException e) {
System.out.println("商品价格的格式不正确,请输入数值型数据!");
console.next();
//输入错误,再次执行此循环,直到输入正确
continue;
}
Goods goods = new Goods(goodsId, goodsName, goodsPrice);
// 将商品信息添加到HashMap中
goodsMap.put(goodsId, goods);
i++;
//输入正确,将商品信息添加到map中,使用break结束里面的循环,继续执行整体的循环
break;
}
}如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
java工程师2020版
- 参与学习 人
- 提交作业 9410 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程

恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星