import com.sun.org.apache.xpath.internal.operations.Or;
import java.util.Scanner;
public class Store {
private Book[] books; // 书籍
public Store() {
books = new Book[3];
books[0] = new Book("1","Java基础案例教程", 59.8, 100);
books[1] = new Book("2","计算机网络技术", 29.9, 56);
books[2] = new Book("3","数据库原理与应用", 39.9, 220);
}
public void showBooks() { // 展示书籍
System.out.println("--------------- 图书列表----------------");
System.out.println("编号\t\t名称\t\t价格\t\t库存\t\t");
for (Book b : this.books) {
System.out.println(b.getId() + "\t" + b.getName() + "\t" + b.getPrice() + "\t" + b.getStocks());
}
System.out.println("----------------------------------------");
}
public Cart buy() { // 购买功能
this.showBooks();
Scanner scanner = new Scanner(System.in);
Cart cart = new Cart(); // 给用户生成一个购物车
while (true) {
System.out.print("请输入您要购买的书籍编号:");
int id = scanner.nextInt();
System.out.print("请输入您要购买的书籍数量:");
int num = scanner.nextInt();
// 下单
Order order = new Order(this.books[id - 1], num);
cart.addOrder(order);
// 询问用户是否继续购买
System.out.print("是否继续购买?(y/n):");
String opt = scanner.next();
if (opt.equals("n")) {
break;
}
this.showBooks(); // 继续展示书籍,让用户购买
}
return cart;
}
public void pay(Cart cart) { // 结账功能
System.out.println("--------------- 图书订单----------------");
System.out.println("订单编号:" + cart.getId());
System.out.println("书籍名称\t\t购买数量\t\t图书单价");
for (int i = 0; i < cart.getOrderNum(); i++) {
Order order = cart.getOrders()[i];
System.out.println(order.getBook().getName() + "\t" + order.getNum() + "\t" + order.getBook().getPrice());
}
System.out.println("订单总额:¥" + cart.getTotalPrice());
}
}
class StoreTest {
public static void main(String[] args) {
Store store = new Store(); // 创建商店
Cart cart = store.buy(); // 用户下单,得到购物车
store.pay(cart);
}
}