基于java的餐厅点菜系统拟采用的方法有哪些?

基于java的餐厅点菜系统拟采用的方法有哪些?,第1张

基于Java的餐厅点菜系统可以采用以下方法:

MVC(Model-View-Controller)架构:将系统分为数据模型、视图和控制器三个部分,分别负责数据管理、用户界面和业务逻辑,实现系统的分层管理和解耦。

数据库技术:采用关系型数据库如MySQL、Oracle等来存储餐厅的菜品信息、订单信息等数据,通过JDBC或ORM框架来 *** 作数据库。

网络通信技术:通过Socket、HTTP等协议实现餐厅服务端与客户端之间的通信,实现远程点菜、在线支付等功能。

面向对象编程技术:采用面向对象的编程思想,通过封装、继承、多态等特性来实现系统的可维护性和扩展性。

GUI(Graphical User Interface)技术:使用Swing或JavaFX等GUI工具包来实现系统的用户界面设计,提供友好的菜单、订单管理等功能。

安全技术:采用HTTPS、SSL等协议保障系统的安全性,避免用户信息泄露和支付等风险。

多线程技术:通过多线程技术来实现点菜、下单、支付等业务 *** 作的并发处理,提高系统的响应速度和吞吐量。

import java.util.*

public class s {

static int x,xx,y,yystatic double sum=0

public static void main(String[] args)

{

String answer="y"double h=0

Scanner input=new Scanner(System.in)

System.out.println("请输入客户数:")

int m=input.nextInt()

int n=m*3

tostring()

do

{

order()

h+=(s(x,xx))+(d(y,yy))

System.out.println("是否继续:")

answer=input.next()

if(answer.equals("n"))

break

}while(true)

System.out.println(h+n)

}

static void tostring()

{

System.out.println("菜单")

System.out.println("食品:")

System.out.println("1咖喱牛肉饭¥40.00")

System.out.println("2寿司套餐¥65.00")

System.out.println("3扬州市消防3米¥45.00")

System.out.println("4沙朗牛排和意大利面¥72.00")

System.out.println("5鸡肉蔬菜卷¥42.00")

System.out.println("饮料:")

System.out.println("21软饮料¥10.00")

System.out.println("22红葡萄酒¥15.00")

System.out.println("23啤酒¥15.00")

}

static double s(int f,int x)

{

double p=0

switch(f)

{

case 1:p=40.00break

case 2:p=65.00break

case 3:p=45.00break

case 4:p=72.00break

case 5:p=42.00break

}

sum=p*x

return sum

}

static double d(int f,int x)

{

double p=0

switch(f)

{

case 21:p=10.00break

case 22:p=15.00break

case 23:p=15.00break

}

sum=p*x

return sum

}

static void order()

{

Scanner input=new Scanner(System.in)

System.out.println("请选择食品:")

x=input.nextInt()

System.out.println("请选择份数:")

xx=input.nextInt()

System.out.println("请选择饮料:")

y=input.nextInt()

System.out.println("请选择瓶数:")

yy=input.nextInt()

}

}

加分!!!!!

import java.util.Scanner

import java.util.Map

import java.util.HashMap

import  java.util.Random

public class Test {

    public static void main(String[] args) {

            Random random = new Random()

        Scanner scan = new Scanner(System.in)

        //存储菜名和数量的集合

        Map<String,Integer> map = new HashMap<String,Integer>()

        while(true) {

            String name

            int number

            System.out.println("请输入菜名:")

            name = scan.next()

            //如果输入内容为 start 则跳出循环

            if(name.equalsIgnoreCase("start")) {

                break

            }

            System.out.println("请输入 " + name + " 的数量:")

            //判断输入内容是否可以转为 int

            if(scan.hasNextInt()) {

                number = scan.nextInt()

            }

            else {

                scan.next()

                System.out.println("参数不合法")

                continue

            }

            System.out.println("您点了 " + number + " 份 " + name)

            //如果菜名重复,则会自动替换之前的数据,HashMap 的 key 是不允许重复的

            map.put(name,number)

        }

        String[] names = map.keySet().toArray(new String[]{})

        for(int i = 0  i < names.length  i ++) {

            // Random 随机生成价格,范围 0 - 99

            System.out.println(map.get(names[i]) + " 份 " + names[i] + " 已上菜,价格:" + random.nextInt(100) + " 元")

    try {

            //休眠 1000 毫秒

                Thread.sleep(1000)

            }

            catch(InterruptedException e) {

                e.printStackTrace()

            }

        }

    }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11554822.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存