(3)案例:有5家衣服专卖店,每家最多购买3件。用户可以选择离开,
- 可以买衣服。最后打印总共买了几件衣服。
模拟菜单 选输入不同的数字进入不同的选择
下面是代码
- @author xiangtao.p
*
- @Date 2020年10月30日
*/
public class Shopping {
int sum = 0;// 买衣服的数量
public static void main(String[] args) {
//创建新的购物的对象
Shopping shop = new Shopping();
//调用买衣服的方法
System.out.println("你购买的衣服总数为:" + shop.buyClothes());
}
//买衣服的方法
public int buyClothes() {
int store1 = 0;// 记录每家商铺购买的衣服数量
int store2 = 0;
int store3 = 0;
int store4 = 0;
int store5 = 0;
int choice = 0;// 选择
int num = 0;// 衣服件数
Scanner scan = new Scanner(System.in);
do {
System.out.println("请选择输入要进入的商铺:1.第一家 == 2.第二家 == 3.第三家 == 4.第四家 == 5.第五家 8)检查购买的衣服总数 9)结束购物 ");
choice = scan.nextInt();
String msg = "你进入了第" + choice + "家商铺,请选择购买的衣服件数(0-3)";
//结束do-while循环的条件 :输入9
if (choice == 9) {
break;
}
switch (choice) {
case 1:
System.out.println(msg);
System.out.println("提示:你在本店可以购买件" + (3 - store1) + "衣服;你目前已经购买了" + sum + "件衣服");
num = scan.nextInt();
if (store1 >= 3) {
System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
break;//结束本次break循环,进入下一次do-while循环
} else if (num > (3 - store1)) {
System.out.println("你选择的超出了购买上限,欢迎下次再来!");
break;//结束本次break循环,进入下一次do-while循环
} else {
sum += num;// 衣服求和
store1 += num;// 本店铺购买的衣服累加
System.out.println("你在第" + choice + "店累计购买了" + store1 + "件衣服,下次还可购买" + (3 - store1) + "件衣服! "
+ "\n" + "请继续你的选择");
break;//结束本次break循环,进入下一次do-while循环
}
case 2:
System.out.println(msg);
System.out.println("提示:你在本店可以购买件" + (3 - store2) + "衣服;你目前已经购买了" + sum + "件衣服");
num = scan.nextInt();
if (store2 >= 3) {
System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
break;
} else if (num > (3 - store2)) {
System.out.println("你选择的超出了购买上限,欢迎下次再来!");
break;
} else {
sum += num;
store2 += num;
System.out.println("你在第" + choice + "店累计购买了" + store2 + "件衣服,下次还可购买" + (3 - store2) + "件衣服! "
+ "\n" + "请继续你的选择");
break;
}
case 3:
System.out.println(msg);
System.out.println("提示:你在本店可以购买件" + (3 - store3) + "衣服;你目前已经购买了" + sum + "件衣服");
num = scan.nextInt();
if (store3 >= 3) {
System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
break;
} else if (num > (3 - store3)) {
System.out.println("你选择的超出了购买上限,欢迎下次再来!");
break;
} else {
sum += num;
store3 += num;
System.out.println("你在第" + choice + "店累计购买了" + store3 + "件衣服,下次还可购买" + (3 - store3) + "件衣服! "
+ "\n" + "请继续你的选择");
break;
}
case 4:
System.out.println(msg);
System.out.println("提示:你在本店可以购买件" + (3 - store4) + "衣服;你目前已经购买了" + sum + "件衣服");
num = scan.nextInt();
if (store4 >= 3) {
System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
break;
} else if (num > (3 - store4)) {
System.out.println("你选择的超出了购买上限,欢迎下次再来!");
break;
} else {
sum += num;
store4 += num;
System.out.println("你在第" + choice + "店累计购买了" + store4 + "件衣服,下次还可购买" + (3 - store4) + "件衣服! "
+ "\n" + "请继续你的选择");
break;
}
case 5:
System.out.println(msg);
System.out.println("提示:你在本店可以购买件" + (3 - store5) + "衣服;你目前已经购买了" + sum + "件衣服");
num = scan.nextInt();
if (store5 >= 3) {
System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
break;
} else if (num > (3 - store5)) {
System.out.println("你选择的超出了购买上限,欢迎下次再来!");
break;
} else {
sum += num;
store5 += num;
System.out.println("你在第" + choice + "店累计购买了" + store5 + "件衣服,下次还可购买" + (3 - store5) + "件衣服! "
+ "\n" + "请继续你的选择");
break;
}
case 8:
System.out.println("你目前已经购买了" + sum + "件衣服");
break;
case 9:
System.out.println("你已经选择结束购物");
// return sum;
break;
}
} while (true);
return sum;
}
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。