做Java小项目(一)--点菜系统

2023-11-05 05:51
文章标签 java 系统 项目 点菜

本文主要是介绍做Java小项目(一)--点菜系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 学完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-ArrayListstatic 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日项目思维养成_哔哩哔哩_bilibiliicon-default.png?t=M0H8https://www.bilibili.com/video/BV1Aq4y1W79E?p=1

这篇关于做Java小项目(一)--点菜系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/347850

相关文章

Spring boot整合dubbo+zookeeper的详细过程

《Springboot整合dubbo+zookeeper的详细过程》本文讲解SpringBoot整合Dubbo与Zookeeper实现API、Provider、Consumer模式,包含依赖配置、... 目录Spring boot整合dubbo+zookeeper1.创建父工程2.父工程引入依赖3.创建ap

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

Spring Boot集成Druid实现数据源管理与监控的详细步骤

《SpringBoot集成Druid实现数据源管理与监控的详细步骤》本文介绍如何在SpringBoot项目中集成Druid数据库连接池,包括环境搭建、Maven依赖配置、SpringBoot配置文件... 目录1. 引言1.1 环境准备1.2 Druid介绍2. 配置Druid连接池3. 查看Druid监控

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr