学完JavaSE和学了一部分JavaEE(刚学到CSS).在B站找了一些小项目来复习一些语法知识,如有错误,望大家指正
/*
1.首先建立的是菜单显示,用到了ArrayList来储存每一个菜的信息
2.之后开始服务显示主菜单
3.开始关于选择需求
4.一些基本逻辑
用到的知识:
1.ArrayList<> //用于储存菜单名称
2.Scanner的输入 //用于反馈用户的选择
3.switch //针对用户的选择
4.DecimalFormat //关于小数点的保留
5.增强for循环
*/
package FirstProject;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class DishApp {
static List<Dish> dishList=new ArrayList<>();//用到了多态List-ArrayList
static List<Dish> alreadyOrder=new ArrayList<>();//用户已点的菜单
static double sum=0;
public static void main(String[] args) {
addDish();//初始化菜单
Scanner sc=new Scanner(System.in);
while(true) {
showMenu();//显示主菜单
int num = sc.nextInt();
switch (num) {
case 1:
showMenuList();
while (true) {
int num1 = sc.nextInt();
if (num1 == 0) break;
else {
System.out.println("亲,您点了" + dishList.get(num1 - 1).name);
alreadyOrder.add(dishList.get(num1 - 1));
}
}break;
case 2:
showAlreadyM();
while (true){
int num1=sc.nextInt();
if (num1==0) break;
}break;
case 3:
getSum();
return;
}
}
}
public static void addDish(){
Dish dish=new Dish(1,"爆炒土豆",18.88);
dishList.add(dish);
dishList.add(new Dish(2,"地三鲜",24.88));//简便写法
dishList.add(new Dish(3,"牛腩盖饭",35.88));
dishList.add(new Dish(4,"水煮鱼",43.88));
dishList.add(new Dish(5,"全家福",88.88));
}
public static void showMenu(){
System.out.println("-----主菜单-----");
System.out.println("点菜\t\t\t1");
System.out.println("已点菜系\t\t2");
System.out.println("买单\t\t\t3");
System.out.println("---请选择你需要的服务---");
}
public static void showMenuList(){
System.out.println("---请您点菜---");
//开始对数组进行遍历
for (int i = 0; i <dishList.size() ; i++) {
Dish dish = dishList.get(i);
System.out.println(dish.number + dish.name + dish.price);
}
System.out.println("--开始输入序号点菜,点击0可以返回主菜单--");
}
public static void showAlreadyM(){
System.out.println("--您好,这是您的菜--");
for (Dish dish :alreadyOrder) {
System.out.println(dish.name);
}
System.out.println("点击0可以返回主菜单--");
}
public static void getSum(){
for (int i = 0; i < alreadyOrder.size(); i++) {
sum+=alreadyOrder.get(i).price;
}
DecimalFormat df = new DecimalFormat("#.00");//保留小数点两位
// 符号#(代表一个或多个数字,如果不存在则显示为空)
System.out.println("您好,本次消费一共:"+df.format(sum));
}
}
这是我在B站找的视频,很乐意分享给大家每天1个java练习小项目,java7日项目思维养成_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1Aq4y1W79E?p=1