设计一段JAVA网上书店代码‘
时间: 2024-06-11 10:05:03 浏览: 7
import java.util.ArrayList;
import java.util.Scanner;
class Book {
private String title;
private String author;
private double price;
private int quantity;
public Book(String title, String author, double price, int quantity) {
this.title = title;
this.author = author;
this.price = price;
this.quantity = quantity;
}
public String getTitle() {
return title;
}
public String getAuthor() {
return author;
}
public double getPrice() {
return price;
}
public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
}
@Override
public String toString() {
return title + " by " + author + " - $" + price + " (" + quantity + " left)";
}
}
class ShoppingCart {
private ArrayList<Book> books;
public ShoppingCart() {
books = new ArrayList<>();
}
public void addBook(Book book) {
books.add(book);
}
public void removeBook(Book book) {
books.remove(book);
}
public double getTotalPrice() {
double total = 0;
for (Book book : books) {
total += book.getPrice();
}
return total;
}
public void checkout() {
if (books.isEmpty()) {
System.out.println("Your shopping cart is empty.");
return;
}
System.out.println("Your order:");
for (Book book : books) {
System.out.println(book);
}
System.out.println("Total: $" + getTotalPrice());
System.out.println("Thank you for shopping with us!");
books.clear();
}
}
class BookStore {
private ArrayList<Book> books;
private ShoppingCart cart;
public BookStore() {
books = new ArrayList<>();
cart = new ShoppingCart();
}
public void addBook(Book book) {
books.add(book);
}
public void removeBook(Book book) {
books.remove(book);
}
public void displayBooks() {
System.out.println("Books available:");
for (Book book : books) {
System.out.println(book);
}
}
public void displayCart() {
System.out.println("Your shopping cart:");
for (Book book : cart.books) {
System.out.println(book);
}
System.out.println("Total: $" + cart.getTotalPrice());
}
public void addToCart(Book book) {
if (books.contains(book)) {
Book storeBook = books.get(books.indexOf(book));
if (storeBook.getQuantity() > 0) {
storeBook.setQuantity(storeBook.getQuantity() - 1);
cart.addBook(book);
System.out.println(book.getTitle() + " added to cart.");
} else {
System.out.println("Sorry, " + book.getTitle() + " is out of stock.");
}
} else {
System.out.println("Sorry, " + book.getTitle() + " is not available.");
}
}
public void removeFromCart(Book book) {
if (cart.books.contains(book)) {
Book cartBook = cart.books.get(cart.books.indexOf(book));
cart.removeBook(cartBook);
Book storeBook = books.get(books.indexOf(book));
storeBook.setQuantity(storeBook.getQuantity() + 1);
System.out.println(book.getTitle() + " removed from cart.");
} else {
System.out.println(book.getTitle() + " is not in your shopping cart.");
}
}
public void checkout() {
cart.checkout();
}
}
public class OnlineBookStore {
public static void main(String[] args) {
BookStore store = new BookStore();
store.addBook(new Book("The Great Gatsby", "F. Scott Fitzgerald", 12.99, 5));
store.addBook(new Book("To Kill a Mockingbird", "Harper Lee", 9.99, 3));
store.addBook(new Book("1984", "George Orwell", 8.99, 6));
store.addBook(new Book("Pride and Prejudice", "Jane Austen", 7.99, 2));
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("1. Display available books");
System.out.println("2. Display shopping cart");
System.out.println("3. Add book to cart");
System.out.println("4. Remove book from cart");
System.out.println("5. Checkout");
System.out.println("6. Exit");
System.out.print("Enter your choice (1-6): ");
int choice = scanner.nextInt();
switch (choice) {
case 1:
store.displayBooks();
break;
case 2:
store.displayCart();
break;
case 3:
scanner.nextLine();
System.out.print("Enter book title: ");
String title = scanner.nextLine();
System.out.print("Enter book author: ");
String author = scanner.nextLine();
System.out.print("Enter book price: ");
double price = scanner.nextDouble();
store.addToCart(new Book(title, author, price, 1));
break;
case 4:
scanner.nextLine();
System.out.print("Enter book title: ");
String cartTitle = scanner.nextLine();
System.out.print("Enter book author: ");
String cartAuthor = scanner.nextLine();
store.removeFromCart(new Book(cartTitle, cartAuthor, 0, 0));
break;
case 5:
store.checkout();
break;
case 6:
System.exit(0);
break;
default:
System.out.println("Invalid choice, please try again.");
break;
}
}
}
}
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)