Java学习日记(day11)

购物车模型的实现

一、入口函数

package test.test2_1;

import java.util.*;

public class Demo {
    public static void main(String[] args) {
            Map<Integer,Car> mapuser=new HashMap<>();
            List<IT_Iform> list=new ArrayList<>();
            list.add(new IT_Iform(1,"雀巢",5));
            list.add(new IT_Iform(2,"瑞幸",9.9));
            list.add(new IT_Iform(3,"幸运咖",8));
            Scanner sc=new Scanner(System.in);
        System.out.println("请选择你需要的咖啡:");
        for(int i=0;i<list.size();i++)
            System.out.println(list.get(i).toString());
        int n=sc.nextInt();
        System.out.print("请选择购买的数量");
        int k=sc.nextInt();
        Car car=new Car();
            for(Map.Entry<Integer,Car> entry:mapuser.entrySet()){
                    if(list.get(n-1).getNo()==entry.getKey()){
                        car=entry.getValue();
                        car.setNum(car.getNum()+k);
                    }
            }
            if(car.getNum()==0)
                car=new Car(k,list.get(n-1));
        mapuser.put(list.get(n-1).getNo(),car);
            for(Map.Entry<Integer,Car> entry:mapuser.entrySet()){
                System.out.print(entry.getValue());
                System.out.println("总计"+(entry.getValue().getIt().getPrice()*entry.getValue().getNum()));
            }
    }
}

二、类定义

package test.test2_1;

public class IT_Iform {
    private int no;
    private String name;
    private double price;
    public IT_Iform(int no, String name, double price) {
        this.no = no;
        this.name = name;
        this.price = price;
    }

    public IT_Iform() {
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getNo() {
        return no;
    }

    public void setNo(int no) {
        this.no = no;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }
    public String toString() {
        return no + "\t\t" + name + "\t\t" + price;
    }
}

三、购物车定义

package test.test2_1;

public class Car {
    private IT_Iform it;
    private int num;

    public Car(int num, IT_Iform it) {
        this.num = num;
        this.it = it;
    }

    public Car() {
    }

    public IT_Iform getIt() {
        return it;
    }

    public void setIt(IT_Iform it) {
        this.it = it;
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }
    public String toString() {
        return  it + "\t\t\t" + num ;
    }
}

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值