Java 简易商品交易源码分享

自学了一段时间Java,是一个菜鸡:),试着做了个简易的商品交易,分享一下源码,不会写注释,勿喷:)


Main.java

import java.util.*;

public class Main {
    
    public static void main(String[] args) {
        //创建用户操作
        operation user_oper = new operation();
        
        //用户输入内容
        Scanner input = new Scanner(System.in);
        String user_input;
        
        while(true)
        {
            //输出主菜单
            user_oper.output_main_menu();
            
            System.out.println("请输入您要进行的操作编号。");
            
            //获取用户输入的内容
            user_input = input.next();
            
            switch(user_input)
            {
                case "1":
                    //查看商品菜单
                    user_oper.export_menu();
                    break;
                case "2":
                    //查看用户购物车
                    user_oper.output_user_cart();
                    break;
                case "3":
                    //添加指定商品至用户购物车
                    user_oper.add_commodity_cart();
                    break;
                case "4":
                    //删除用户购物车内指定商品
                    user_oper.delete_commodity_cart();
                    break;
                case "5":
                    //结账
                    user_oper.check_out();
                    break;
                default:
                    System.out.println("请输入正确的操作编号。\n");
                    break;
            }
        }
    }
    
}
 

operation.java

import java.util.Scanner;

public class operation 
{
    //用户输入内容
    private Scanner input = new Scanner(System.in);
    private String user_input;
    
    //商品名称
    private static String[][] commodity_name = {
        {"香蕉", "4.0"}, {"苹果", "2.0"}, {"菠萝", "3.0"}, {"洛天依浅蓝白条比基尼泳装手办", "1314.0"}
    };
    
    //记录用户选择的商品的编号
    private int[] user_cart = new int[0];//用户购物车
    private double user_pay;//用户需支付费用
    
    //输出主菜单
    public void output_main_menu()
    {
        System.out.println("\n----------主菜单---------");
        System.out.println("1.查看商品菜单\n2.查看用户购物车\n3.添加指定商品至购物车\n4.删除用户购物车内指定商品\n5.结账");
        System.out.println("----------主菜单---------");
    }
    
    //输出商品菜单
    public void export_menu()
    {
        System.out.println("\n----------商品菜单---------");
        
        for(int i = 0; i < commodity_name.length; i++)
        {
            System.out.println(i + "." + commodity_name[i][0]);
        }
        
        System.out.println("----------商品菜单---------\n");
        
        System.out.println("输入任意字符返回主菜单");
        //获取用户输入的内容
        user_input = input.next();
    }
    
    //输出用户购物车
    public void output_user_cart()
    {
        System.out.println("\n----------购物车---------");
        
        //判断用户购物车是否大于0
        if(user_cart.length > 0)
        {
            for(int i = 0; i < user_cart.length; i++)
            {
                System.out.println(i + "." + commodity_name[user_cart[i]][0]);
            }
        }
        else{
            System.out.println("您的购物车是空的。");
        }
        
        System.out.println("----------购物车---------\n");
        
        System.out.println("输入任意字符返回主菜单");
        //获取用户输入的内容
        user_input = input.next();
    }
    
    //添加指定商品至用户购物车
    public void add_commodity_cart()
    {
        //用户输入商品编号
        int com_number;
        //记录用户购物车
        int[] record_cart;
        
        System.out.println("\n请输入您要选择的商品的编号。");
        //获取用户输入的内容
        user_input = input.next();
        
        //判断用户输入字符是否是0-9
        if(user_input.matches("[0-9]"))
        {
            //将字符串转换为整数
            com_number = Double.valueOf(user_input).intValue();
            
            //判断用户输入的内容是否小于等于商品数量或是否大于0
            if(com_number <= commodity_name.length && com_number >= 0)
            {
                record_cart = new int[user_cart.length + 1];
                
                for(int i = 0; i < record_cart.length - 1; i++)
                {
                    record_cart[i] = user_cart[i];
                }
                record_cart[record_cart.length - 1] = com_number;
                
                System.out.println("\n已将[" + commodity_name[com_number][0] + " * 1]加入购物车。");
                
                user_cart = record_cart;
            }
        }
    }
    
    //删除删除用户购物车内指定商品
    public void delete_commodity_cart(){
        //用户输入商品编号
        int com_number;
        //记录用户购物车
        int[] record_cart;
        
        System.out.println("\n请输入您要删除的商品的编号。");
        //获取用户输入的内容
        user_input = input.next();
        
        //判断用户输入字符是否是0-9
        if(user_input.matches("[0-9]"))
        {
            //将字符串转换为整数
            com_number = Double.valueOf(user_input).intValue();
            
            //判断用户输入的内容是否小于等于购物车内商品数量或是否大于0
            if(com_number <= user_cart.length && com_number >= 0)
            {
                
                record_cart = new int[user_cart.length - 1];
                
                int j = 0;
                for(int i = 0; i < record_cart.length; i++)
                {
                    if(i != com_number)
                    {
                        record_cart[j] = user_cart[i];
                        
                        j += 1;
                    }
                }
                
                System.out.println("\n已将购物车内的的[" + commodity_name[user_cart[com_number]][0] + " * 1]删除。");
                
                user_cart = record_cart;
            }
        }
    }
    
    //结账
    public void check_out()
    {
        //商品费用
        double commodity_cost;
        
        //判断用户购物车是否大于0
        if(user_cart.length > 0)
        {
            System.out.println("\n----------结账---------\n您选择的商品有:");
            
            for(int i = 0; i < user_cart.length; i++)
            {
                //计算购物车内商品总费用
                commodity_cost = Double.valueOf(commodity_name[user_cart[i]][1]).doubleValue();
                user_pay += commodity_cost;
                
                System.out.println(i + "." + commodity_name[user_cart[i]][0]);
            }
            
            System.out.println("\n您一共需支付" + user_pay + "元。");
            
            System.out.println("----------结账---------");
            System.out.println("是否结账?\n0.确认\n1.取消\n");
            
            //获取用户输入的内容
            user_input = input.next();
            
            switch(user_input)
            {
                case "0": 
                    //确认结账
                    //清空购物车,用户需支付费用归零
                    user_cart = new int[0];
                    user_pay = 0;
                    
                    System.out.println("\n支付成功!!感谢您的光临!!");
                    break;
                case "1":
                    //取消结账
                    break;
            }
        }
        else{
            System.out.println("您的购物车是空的。");
        }
    }
}
 


写的不好,勿喷,谢谢:)906b50dd9c8c4dfc97a012be72eabb49.jpg

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值