java编写购物系统

使用Java编写购物系统,可以实现商品展示、购物车管理、订单处理等功能,提高用户体验和购物效率。

购物系统主要包括以下几个部分:

1、商品类(Product)

java编写购物系统

2、购物车类(ShoppingCart)

3、用户类(User)

4、订单类(Order)

java编写购物系统

5、主程序(Main)

下面是详细的代码实现:

// 1. 商品类(Product)
class Product {
    private String id;
    private String name;
    private double price;
    public Product(String id, String name, double price) {
        this.id = id;
        this.name = name;
        this.price = price;
    }
    public String getId() {
        return id;
    }
    public String getName() {
        return name;
    }
    public double getPrice() {
        return price;
    }
}
// 2. 购物车类(ShoppingCart)
class ShoppingCart {
    private Map<Product, Integer> cartItems;
    public ShoppingCart() {
        cartItems = new HashMap<>();
    }
    public void addItem(Product product, int quantity) {
        cartItems.put(product, quantity);
    }
    public void removeItem(Product product) {
        cartItems.remove(product);
    }
    public double getTotalPrice() {
        double totalPrice = 0;
        for (Map.Entry<Product, Integer> entry : cartItems.entrySet()) {
            totalPrice += entry.getKey().getPrice() * entry.getValue();
        }
        return totalPrice;
    }
}
// 3. 用户类(User)
class User {
    private String id;
    private String name;
    private ShoppingCart shoppingCart;
    public User(String id, String name) {
        this.id = id;
        this.name = name;
        this.shoppingCart = new ShoppingCart();
    }
    public String getId() {
        return id;
    }
    public String getName() {
        return name;
    }
    public ShoppingCart getShoppingCart() {
        return shoppingCart;
    }
}
// 4. 订单类(Order)
class Order {
    private String id;
    private User user;
    private List<Product> products;
    private double totalPrice;
    public Order(String id, User user, List<Product> products) {
        this.id = id;
        this.user = user;
        this.products = products;
        this.totalPrice = calculateTotalPrice();
    }
    private double calculateTotalPrice() {
        double totalPrice = 0;
        for (Product product : products) {
            totalPrice += product.getPrice();
        }
        return totalPrice;
    }
    public String getId() {
        return id;
    }
    public User getUser() {
        return user;
    }
    public List<Product> getProducts() {
        return products;
    }
    public double getTotalPrice() {
        return totalPrice;
    }
}
// 5. 主程序(Main)
public class Main {
    public static void main(String[] args) {
        // 创建商品
        Product product1 = new Product("1", "商品1", 100);
        Product product2 = new Product("2", "商品2", 200);
        Product product3 = new Product("3", "商品3", 300);
        // 创建用户
        User user = new User("1", "张三");
        // 添加商品到购物车
        user.getShoppingCart().addItem(product1, 1);
        user.getShoppingCart().addItem(product2, 2);
        user.getShoppingCart().addItem(product3, 3);
        // 创建订单
        List<Product> orderProducts = new ArrayList<>(user.getShoppingCart().cartItems.keySet());
        Order order = new Order("1", user, orderProducts);
        // 输出订单信息
        System.out.println("订单ID:" + order.getId());
        System.out.println("用户名:" + order.getUser().getName());
        System.out.println("订单总价:" + order.getTotalPrice());
        System.out.println("购买的商品:");
        for (Product product : order.getProducts()) {
            System.out.println("商品名称:" + product.getName() + ",价格:" + product.getPrice());
        }
    }
}

这个购物系统实现了商品、购物车、用户、订单等基本功能,用户可以将商品添加到购物车,然后创建一个订单,订单会计算购物车中所有商品的总价。

java编写购物系统

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/641561.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-05-21 11:44
下一篇 2024-05-21 11:48

相关推荐

  • 如何用Java上传MySQL数据库连接驱动并实现数据库连接?

    要连接MySQL数据库,首先需要上传MySQL JDBC驱动程序(mysql-connector-java.jar)到项目中。然后使用以下代码建立连接:,,“java,import java.sql.Connection;,import java.sql.DriverManager;,import java.sql.SQLException;,,public class Main {, public static void main(String[] args) {, String url = “jdbc:mysql://localhost:3306/yourDatabase”;, String user = “yourUsername”;, String password = “yourPassword”;,, try {, Class.forName(“com.mysql.cj.jdbc.Driver”);, Connection connection = DriverManager.getConnection(url, user, password);, System.out.println(“Connected to the database successfully!”);, } catch (ClassNotFoundException | SQLException e) {, e.printStackTrace();, }, },},“

    2024-11-25
    08
  • gc代表什么含义?

    gc即气相色谱(gas chromatography,简称gc),是二十世纪五十年代出现的一项重大科学技术成就。

    2024-11-25
    016
  • 如何编写负载均衡配置代码?

    在现代网络架构中,负载均衡是确保服务高可用性和优化资源使用的关键策略,通过合理配置负载均衡器,可以分散用户请求到多个服务器上,从而提高系统的响应速度和稳定性,本文将详细介绍如何配置一个基本的负载均衡系统,包括硬件和软件的选择、配置步骤以及常见问题解答,一、负载均衡概述负载均衡(Load Balancing)是一……

    2024-11-25
    01
  • 如何编写 ASP 点赞程序?

    ASP 点赞程序是一种使用ASP(Active Server Pages)技术编写的应用程序,用于实现用户对特定内容或帖子进行点赞的功能。该程序通常包括数据库操作、用户身份验证和界面交互等部分。通过ASP点赞程序,网站管理员可以方便地管理和统计用户对内容的喜好程度,从而优化网站内容和用户体验。

    2024-11-22
    012

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入