自动售货机代码java循环选择 编写自动售货机程序

求一个简易自动售货机的代码(java)要用创建类封装性,输出的时候要有提示语句,代码类似以下图片

//Example类文件Example.java

十余年的阜城网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整阜城建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“阜城网站设计”,“阜城网站推广”以来,每个客户项目都认真落实执行。

package cn.zhouhan;

import java.util.Scanner;

public class Example {

static Drink cola, fanta, blacktea, greentea;

static int money;

public static void main(String[] args) {

// TODO Auto-generated method stub

cola = new Drink("可乐", 50, 2.0, 1);

fanta = new Drink("芬达", 40, 3.0, 2);

blacktea = new Drink("红茶", 30, 4.0, 3);

greentea = new Drink("绿茶", 20, 5.0, 4);

money = 500;

for()

{

System.out.println("-------------自动售货机-------------");

cola.UserPrintDrinkInfo();

fanta.UserPrintDrinkInfo();

blacktea.UserPrintDrinkInfo();

greentea.UserPrintDrinkInfo();

System.out.println("----------------------------------");

System.out.println("1.购买饮料");

System.out.println("2.管理员查询");

System.out.println("3.返回");

System.out.println("请输入要执行的操作序号:");

Scanner scannerIndex = new Scanner(System.in);

int indexScanner = scannerIndex.nextInt();

switch(indexScanner)

{

case 1:

System.out.println("请选择购买的饮料(1.可乐,2.芬达,3红茶,4.绿茶):");

Scanner numberScanner = new Scanner(System.in);

int buyIndex = numberScanner.nextInt();

Drink drink = getDrink(buyIndex);

System.out.println("请输入购买的数量:");

Scanner countScanner = new Scanner(System.in);

int buyCount = countScanner.nextInt();

if (buyCount  0)

{

System.out.println("您选择了" + buyCount + "瓶" + drink.getName() + "." );

System.out.println("总价格:" + drink.getPrice() * buyCount + "元,请投入1元或5元纸币。");

System.out.println("确定购买?(1.确定,2.退款):");

Scanner sureScanner = new Scanner(System.in);

int sure = sureScanner.nextInt();

if (sure == 1)

{

drink.sellDrink(buyCount);

money += drink.getPrice() * buyCount;

System.out.println("您购买了" + buyCount + "瓶" + drink.getName() + ",交易成功." );

}

if (sure ==2 )

{

System.out.println("退款成功!");

}

}

else

System.out.println("输入的数量有误!");

break;

case 2:

System.out.println("请输入管理员密码:");

Scanner pwScanner = new Scanner(System.in);

int password = pwScanner.nextInt();

if (password == 123)

{

System.out.println("密码正确,目前的余额为:" + money + "元。");

}

else

System.out.println("密码错误。");

break;

case 3:

break;

default:

System.out.println("请输入正确的数字。");

break;

}

}

}

public static Drink getDrink(int drinkIndex)

{

Drink drink = null;

switch(drinkIndex)

{

case 1:

drink = cola;

System.out.println("您选择了可乐。");

break;

case 2:

drink = fanta;

System.out.println("您选择了芬达。"); 

break;

case 3:

drink = blacktea;

System.out.println("您选择了红茶。");

break;

case 4:

drink = greentea;

System.out.println("您选择了绿茶。");

break;

default:

//drink = null;

System.out.println("输入错误,请输入1~4的数字!");

}

return drink;

}

}

//创建的Drink类文件Drink.java

package cn.zhouhan;

public class Drink {

private String name;

private int number;

private double price;

private double drinkMoney;

private int index;

public Drink(String name, int number, double price, int index)

{

this.name = name;

this.number = number;

this.price = price;

this.drinkMoney = number * price;

this.index = index;

}

public String getName()

{

return this.name;

}

public int getNumber()

{

return this.number;

}

public double getPrice()

{

return this.price;

}

public void sellDrink(int count)

{

this.number -= count;

this.drinkMoney += this.price * count;

}

public void UserPrintDrinkInfo()

{

System.out.println("品名:"+ this.name +",单价:" + this.price + "元,剩余数量:" + this.number + "瓶。");

}

}

java简单工厂模式是什么

就是专门写一个类,他有一个方法根据传入的参数不同,返回不同的对象。

比如有一台自动售货机AutoSeller, 然后它卖很多饮料Drink, 有茶Tea, 有可乐Cola, 当你去买的时候,你可能是通过按不同的按钮,但对AutoSeller的实现来说,他可能都是同样的方法,只是根据不同的参数(按钮),返回给你不同的对象(Tea或Cola)。

public interface Drink {

enum Type {TEA, COLA};

}

public Tea implements Drink {

}

public Cola implements Drink {

}

public class AutoSeller {//工厂

public static Drink getDrink(Drink.Type type) {

switch(type) {

case TEA:

return new Tea();

case COLA:

return new Cola();

default:break;

}

}

}

如上, 在你选择饮料按下按钮里, 自动售货机的代码可能只要执行AutoSeller.getDrink(type)就可以返回你想要的饮料了。

之所以要把Drink定义成接口,一般来讲,用这种架构的话, Drink里面会声明一些接口方法, 这些方法是Tea和Cola都需要的, 但Drink不用关心方法的具体实现, 具体实现只要由Tea和Cola去完成。

而你通过AutoSeller.getDrink(type)去拿到一个Drink对象后,可以用这个对象直接去调Drink中声明的方法。

急求简易自动售货机(java编程)

package com.test;

import java.util.Scanner;

import com.sun.java_cup.internal.internal_error;

public class Demo {

/**

* @param args

*/

public static void main(String[] args) {

Scanner s=new Scanner(System.in);

int c;

int gum=0,cho=0,pop=0,jui=0;

do{

Demo.play_bord();

c=s.nextInt();

if(c0||c6){

System.out.println("1-6 only ,input a new choice");

c=s.nextInt();

}

switch(c){

case 1:

System.out.println("here is your gum");

gum++;

break;

case 2:

System.out.println("here is your chocolate");

cho++;

break;

case 3:

System.out.println("here is your popcorn");

pop++;

break;

case 4:

System.out.println("here is your juice");

jui++;

break;

case 5:

System.out.println(gum+" gum are sold");

System.out.println(cho+" chocolate are sold");

System.out.println(pop+" popcorn are sold");

System.out.println(gum+" juice are sold");

break;

case 6:

System.out.println("system exit");

}

}while(c!=6);

}

public static void play_bord(){

System.out.println("****这是简易售货机,请按下数字选择服务*****");

System.out.println("[1]:get gum");

System.out.println("[2]:get chocolate");

System.out.println("[3]:get popcorn");

System.out.println("[4]:get juice");

System.out.println("[5]:dispaly totalsold");

System.out.println("[6]:quit");

System.out.println("***************************");

}

}

刚好以前写了个 改完给你了


分享名称:自动售货机代码java循环选择 编写自动售货机程序
URL网址:http://ybzwz.com/article/ddjhieo.html