import java.util.Objects;/*** @Author: 廾匸* @Date: 2020/11/18 18:32* @Description: 商品类* @version: 1.01*/
public class Goods{private int id;private String name;private int quantity;private double price;public Goods(int id, String name, int quantity, double price) {this.id = id;this.name = name;this.quantity = quantity;this.price = price;}public Goods() {}public int getQuantity() {return quantity;}public void setQuantity(int quantity) {this.quantity = quantity;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getId() {return id;}public void setId(int id) {this.id = id;}public double getPrice() {return price;}public void setPrice(double price) {this.price = price;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;Goods goods = (Goods) o;return id == goods.id &&quantity == goods.quantity &&Double.compare(goods.price, price) == 0;}@Overridepublic int hashCode() {return Objects.hash(id, quantity, price);}@Overridepublic String toString() {return "Goods{" +"id=" + id +", Quantity=" + quantity +", price=" + price +'}';}}import java.util.Comparator;
import java.util.List;/*** @Author: 廾匸* @Date: 2020/11/18 18:36* @Description: 方法类* @version: 1.01*/
public class Methed {// 添加public static void save(List<Goods> list,Goods goods){if(list ==null||goods==null) {System.out.println("无商品");}if(list.size() != 0){for (Goods goods1 : list) {if(goods1.getName().equals(goods.getName())){System.out.println("用户名重复,请重新添加数据");}}}list.add(goods);}//删除public static void delect(List<Goods> list,int id){if (list==null||list.size()==0||id<1) {System.out.println("没有此商品");}for (int i = 0; i < list.size(); i++) {if(list.get(i).getId() == id){list.remove(i);System.out.println("删除成功");}}System.out.println("删除之后剩余:");list.forEach(System.out::println);}//修改public static void update(List<Goods> list,int id,int quantity){if (list==null||list.size()==0||id<1) {System.out.println("没有此商品");}for (int i = 0; i < list.size(); i++) {if(list.get(i).getId() == id){list.get(i).setQuantity(quantity);System.out.println("数量修改成功");}}System.out.println("修改之后:");list.forEach(System.out::println);}// 按购买商品的总价进行升序显示所购买的商品信息public static void show(List<Goods> list){if (list.size() != 0) {list.sort(new Comparator<Goods>() {@Overridepublic int compare(Goods o1, Goods o2) {if ((o1.getPrice() * o1.getQuantity()) > (o2.getPrice() * o2.getQuantity())) {return 1;} else if ((o1.getPrice() * o1.getQuantity()) < (o2.getPrice() * o2.getQuantity())) {return -1;} else {return 0;}}});for (Goods goods : list) {System.out.println(goods);}} else {System.out.println("你的购物车是空的,快去剁手吧!");}}
}import java.util.ArrayList;
import java.util.List;/*** @Author: 廾匸* @Date: 2020/11/18 18:29* @Description: 购物车类* @version: 1.01*/
public class ShoppingCart {public static void main (String[] args){List<Goods> list = new ArrayList<>();Methed.save(list,new Goods(1,"衣服",2,156.2));Methed.save(list,new Goods(2,"食物",6,50.2));Methed.save(list,new Goods(3,"鞋子",2,89.6));Methed.save(list,new Goods(4,"帽子",1,46.3));Methed.save(list,new Goods(5,"电脑",1,6399));list.forEach(System.out::println);System.out.println("******************************");Methed.delect(list,2);System.out.println("******************************");Methed.update(list,3,1);System.out.println("******************************");Methed.show(list);}
}

创建购物车类,模拟购物车功能 1)添加商品到购物车(输入商品的编号和数量) 2)删除商品(删除购物车中的指定购物项) 3) 修改商品(修改商品的数量)4)显示所购买的商品信息(按商品的总价进行升序显相关推荐

  1. 《小米商城》--购物车单条数据删除、购物车数量修改、清空购物车、查看地址功能、添加地址

    在购物车页面,有清空购物车方法以及按钮, 在controler里写出delete方法,现获取请求参数cid,然后传入参数cid调用deleteCartByCid方法,然后跳转到购物车展示功能 然后调用 ...

  2. java中创建dvd_JAVA简单模拟DVD功能

    建立数组1. public class DVD_set { 2. //此处为copy 3. String[] name = new String[50];// 存储DVD的名字 4. String[] ...

  3. 鸡啄米vc++2010系列7(对话框:创建对话框类和添加控件变量)

    前两讲中鸡啄米为大家讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.鸡啄米再声明下,生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 因为鸡啄米给大家的例程 ...

  4. 【浅谈JAVA】1-创建汽车类模拟汽车行驶

    JAVA创建汽车类模拟汽车行驶设计类-属性:尺寸(长宽高).品牌.时速.最高时速-函数:显示汽车状态.启动汽车.加速.减速.汽车行驶.主函数(程序启动入口并创建对象) 源码- 1.定义一个汽车类类通过 ...

  5. 【Java入门学习】JAVA设计一个雇员类,创建雇员类对象

    题目:设计一个雇员类,创建雇员类对象,统计雇员的出勤人数 1.属性包括:编号.姓名.年龄.职务.部门.出勤人数 2.方法包括:构造方法.输出信息的方法.签到方法 要求: 1.考虑属性和方法的访问权限 ...

  6. 编程序创建一个类模板,可以对不同的数据类型的数组分别进行初始化、添加数据、求和、求平均值、显示数组等功能。

    编程序创建一个类模板,可以对不同的数据类型的数组分别进行初始化.添加数据.求和.求平均值.显示数组等功能. #pragma once #include<iostream> using na ...

  7. vue2 + vuex 高度还原 饿了么 App,与官方后台真实数据交互,获取商品信息,实现登陆、购物车、下单等功能...

    前言 vue2的发布后自己也研究了一段时间,奈何公司的技术栈是以react为主,没有机会好好利用vue2去做一个完整的项目.虽然写了几个demo,但和写一个完整的项目还是有很大差别的.于是自己想着用空 ...

  8. CodeIgniter 的购物车类只能添加10个商品的解决办法

    刚学用CodeIgniter不久,用了它的一个购物车类,做完了才发现只能添加10个商品到购物车,查了一下资料,原来是商品的把4K的COOKIES占满了.看到Cart类中有一个_save_cart方法, ...

  9. 购物车添加商品代码 php,PHP购物车类代码

    PHP购物车类代码 在开发网络购物网站的时候,购物车类是购物网站的必备模块.总结一个php实现购物车类.实现了购物车中的商品的添加,修改,删除,列表,以及各种计算的相关功能.采用了php单一类的原理, ...

最新文章

  1. mac git使用与配置踩过的坑
  2. 消除图片在ie中缓存而无法更新的问题
  3. c# 18位身份证源代码
  4. MySQL中文参考手册-- 常用查询的例子
  5. C语言中文件的基本操作函数fprintf和fscanf实例介绍
  6. 初中 昆虫记思维导图_初中物理各单元思维导图,帮孩子扫清初中所有物理知识点!(附电子版)...
  7. 10.8 ss:查看网络状态
  8. jdk入门_JDK 9 REPL:入门
  9. 使用 C++的第三方库 jsoncpp的步骤以及出现的问题
  10. sink的简历(2011-6-20),寻工作一份
  11. React中的合成事件
  12. java二重积分_用java实现二重积分的计算
  13. elasticsearch小记之—— unmapped_type的使用
  14. 电商网站后台九大功能模块详解
  15. “动力电池第三极“中创新航IPO,能否“复刻“宁德时代?
  16. Redis 的过期策略是如何实现的?
  17. pandas模块的统计指标--实现众数和众数的频数
  18. 数据结构之病毒感染检测问题
  19. 校招----小米一面面经
  20. tabIndex 和 aria注意点

热门文章

  1. 技术分享 | mysqlbinlog 技巧
  2. 你应该知道的 9 种 前端设计模式
  3. GSUB - Glyph置换表
  4. 两个人之间的默契-Alison Krauss《When You Say Nothing At All》一切尽在不言中
  5. 串口 YModem 协议 发送文件
  6. 点到直线的距离c语言程序,计算几何算法2. 关于线和点到线的距离(二维和三维)...
  7. 查询式键盘实验c语言,查询式键盘与阵列式键盘实验.doc
  8. msf反弹php shell,反弹shell总结
  9. java学习之CookiSession
  10. git生成个人令牌Access Token