java实现网上购物车程序

2025-05-29 0 103

用java代码写一个简单的网上购物车程序,供大家参考,具体内容如下

需求:

1、写一个商品类,有商品编号、商品名称、商品分类、商品单价属性。

2、写一个商品条目信息类,有商品和数量两个属性,有商品总价格方法。

3、写一个购物车类,有添加商品方法、查看订单信息,删除商品,修改商品,清空购物车,求购物车中所有商品总金额方法。4、写一个测试类,测试上述方法。

商品类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58
public class Product {

private int productId;// 商品编号

private String productName;// 商品名称

private String category;// 商品分类

private double price;// 单价

public Product() {// 无参构造

super();

}

public Product(int productId, String productName, String category,

double price) {

super();

this.productId = productId;

this.productName = productName;

this.category = category;

this.price = price;

}

public String toString() {

return "Product [productId=" + productId + ", productName="

+ productName + ", category=" + category + ", price=" + price

+ "]";

}

public int getProductId() {

return productId;

}

public void setProductId(int productId) {

this.productId = productId;

}

public String getProductName() {

return productName;

}

public void setProductName(String productName) {

this.productName = productName;

}

public String getCategory() {

return category;

}

public void setCategory(String category) {

this.category = category;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

}

商品条目信息类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32
public class ProductItem {

private Product product;//购买的商品

private int count;//商品数量

public double totalMoney(){//小计

double price=product.getPrice();//获取商品单价

return price*count;

}

public ProductItem() {

super();

}

public ProductItem(Product product, int count) {

super();

this.product = product;

this.count = count;

}

public Product getProduct() {

return product;

}

public void setProduct(Product product) {

this.product = product;

}

public int getCount() {

return count;

}

public void setCount(int count) {

this.count = count;

}

}

购物车类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65
import java.util.Collection;

import java.util.Iterator;

import java.util.LinkedHashMap;

import java.util.Map;

public class ShoppingCart {//购物车

//key:商品编号 value:商品条目

private Map<Integer,ProductItem> map=new LinkedHashMap<Integer,ProductItem>();

public void addProduct(Product p){//添加商品

int productId=p.getProductId();

if(map.containsKey(productId)){

ProductItem productItem=map.get(productId);

productItem.setCount(productItem.getCount()+1);

}else{

map.put(productId, new ProductItem(p,1));

}

}

public void showAll(){//查看订单信息

Collection<ProductItem> productItems = map.values();

Iterator<ProductItem> iterator = productItems.iterator();

while(iterator.hasNext()){

ProductItem productItem = iterator.next();

Product product = productItem.getProduct();

System.out.println("商品编号:"+product.getProductId()+",商品名称:"

+product.getProductName()+",单价:"+product.getPrice()+",数量:"+productItem.getCount()

+",小计:"+productItem.totalMoney());

}

}

public boolean deleteProduct(int productId){//删除商品

if(map.containsKey(productId)){

map.remove(productId);

return true;

}

return false;

}

public boolean modifyProduct(int productId,int count){//修改

if(map.containsKey(productId)){

if(count>=1){

ProductItem productItem = map.get(productId);

productItem.setCount(count);

return true;

}else if(count==0){//删除该商品

deleteProduct(productId);

return true;

}

}

return false;

}

public void clearCart(){//清空购物车

map.clear();

}

public double totalAllMoney(){//商品总钱数

double total=0;

Collection<ProductItem> productItems = map.values();

Iterator<ProductItem> iterator = productItems.iterator();

while(iterator.hasNext()){

ProductItem productItem = iterator.next();

double money=productItem.totalMoney();

total+=money;

}

return total;

}

}

测试类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41
public class ShoppingCartTest {

public static void main(String[] args) {

ShoppingCart cart=new ShoppingCart();

Product p1=new Product(101,"华硕笔记本","笔记本",4599);

Product p2=new Product(102,"苹果","水果",5.9);

Product p3=new Product(103,"彩电","家电",2799);

Product p4=new Product(104,"秋裤","服装",128);

Product p5=new Product(105,"华为手机","手机",2998);

Product p6=new Product(101,"华硕笔记本","笔记本",4599);//测试买两件商品的情况

cart.addProduct(p1);

cart.addProduct(p2);

cart.addProduct(p3);

cart.addProduct(p4);

cart.addProduct(p5);

cart.addProduct(p6);

cart.showAll();

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

boolean flag=cart.deleteProduct(p2.getProductId());

if(flag){

System.out.println("商品编号为:"+p2.getProductId()+"的商品删除成功!");

}else{

System.out.println("删除失败");

}

cart.showAll();

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

boolean flag2=cart.modifyProduct(p3.getProductId(), 2);

if(flag2){

System.out.println("商品编号为:"+p3.getProductId()+"的商品修改成功!");

}else{

System.out.println("修改失败");

}

cart.showAll();

//cart.clearCart();

//cart.showAll();

System.out.println("商品总价钱为:"+cart.totalAllMoney());

}

}

运行效果图:

java实现网上购物车程序

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

原文链接:http://blog.csdn.net/ylyang12/article/details/52972432

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 java实现网上购物车程序 https://www.kuaiidc.com/112879.html

相关文章

发表评论
暂无评论