欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一个非常简陋的商品购买系统(*^▽^*)

程序员文章站 2024-03-01 18:19:40
...

一共有两个类,分别为Product和TestProduct

要求也比较简单就是用户已一种固定的格式输入数据然后进行输出订单操作,主要考察的是类中方法的调用,和构造函数的应用

public class Product {
    private int code;
    private String description;
    private double price;

    public Product() {}

    public Product(int iniCode, String iniDescription, double iniPrice) {
        this.code=iniCode;
        this.description=iniDescription;
        this.price=iniPrice;
    }

    public int getCode() {
        return code;
    }

    public String getDescription() {
        return description;
    }

    public double getPrice() {
        return price;
    }

}
import java.util.Scanner;

import static java.lang.Integer.parseInt;


public class TestProduct {
    public static void main(String[] args) {
        int iscountine=0;
        do{Scanner in = new Scanner(System.in);

        System.out.println("本商场提供以下五种商品,客官您要买哪些呢?");
        System.out.println();
        System.out.println("111_Apple、123_Peach、103_Milk、100_Meat、203_Fish");
        System.out.println();
        System.out.println("请输入你要买的商品种类数:");

        int n = in.nextInt();

        Product[] p =new Product[n];

        System.out.println();
        System.out.println("请输入您要购买的商品编号、名称以及价格,格式如下:");
        System.out.println("        111_Apple_8.9");


        String []s1=new String[n];
        String [][]s2=new String[s1.length][3];
        String [][]s3=new String[s1.length][2];


        for(int i=0;i<n;i++){
            s1[i]=in.next();
        }

        for(int i=0;i<s1.length;i++){
            s2[i]= s1[i].split("_");
        }

        // System.out.println(s2[0][1]);


        switch(1) {
            case 1:{
                p[0]=new Product(parseInt(s2[0][0]),s2[0][1],Double.parseDouble(s2[0][2]));
            }if(n==1) {break;}
            case 2:{
                p[1]=new Product(parseInt(s2[1][0]),s2[1][1],Double.parseDouble(s2[1][2]));

            }if(n==2) {break;}
            case 3:{
                p[2]=new Product(parseInt(s2[2][0]),s2[2][1],Double.parseDouble(s2[2][2]));

            }if(n==3) {break;}
            case 4:{
                 p[3]=new Product(parseInt(s2[3][0]),s2[3][1],Double.parseDouble(s2[3][2]));

            }if(n==4) {break;}
            case 5:{
                p[4]=new Product(parseInt(s2[4][0]),s2[4][1],Double.parseDouble(s2[4][2]));

            }break;

        }

        System.out.println("请输入商品序号和你要购买的数量:");

        String []s=new String[n];

        for(int i=0;i<n;i++){       //用s数组先将形如“111_5”这样的储存起来
            s[i]=in.next();
        }

        for(int i=0;i<s1.length;i++){
            s3[i]= s[i].split("_");
        }

        double total=0;//本次购买商品总价
        double temp;

        for(int i = 0; i<n; i++) {
            temp=p[i].getPrice()* parseInt(s3[i][1]);
            total = total + temp;
        }

        System.out.println("您本次购买的商品订单为:");
        System.out.println();
        System.out.println("订单");
        System.out.println("----------------------");
        System.out.println("序号	商品编码	  单价	数量 ");
        for(int i=0;i<n;i++) {
            System.out.println((i+1)+"	     "+p[i].getCode()+"	     "+p[i].getPrice()+" 	"+ parseInt(s3[i][1]));
        }

        System.out.println("总价为:"+total+"元");

        System.out.println("是否继续,1:继续 0 退出");

             iscountine=in.nextInt();
        }while(iscountine!=0);

        System.out.println("感谢您本次购买,期待您的下次光临,Doodbye");
    }

}
相关标签: java