伴随互联网的蓬勃发展,网络购书系统作为电子商务的一种形式正以其高效、低成本的优势逐步成为新兴的经营模式,人们已经不再满足互联网的用途仅仅局限于信息的浏览和发布,更渴望着能够充分享受互联网带来的更多便利。网络购书系统正适应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的图书

本案例要求,使用所学知识编写一个基于控制台的购书系统,实现购书功能。程序输出所有图书的信息,包括每本书的编号、书名、单价、库存顾客购书时,根据提示输入图书编号选购需要的书,并根据提示输入购买书的的数量。购买完毕后输出顾客的订单信息,包括订单号、订单明细、订单总额。

代码实例

import java.util.Scanner;

class book {
private int number; // 编号
private String name; // 书名
private double price; // 单价
private int kucun; // 库存

public book() {
}

public book(int number, String name, double price, int kucun) {
this.number = number;
this.name = name;
this.price = price;
this.kucun = kucun;
}

public int getNumber() {
return number;
}

public String getName() {
return name;
}

public double getPrice() {
return price;
}

public int getKucun() {
return kucun;
}

public void setKucun(int kucun) {
this.kucun = kucun;
}
}

public class Tushu {
public static void main(String[] args) {
Tushu d = new Tushu(); // 创建对象

book[] books = new book[3]; // 定义数组
books[0] = new book(01, "java基础", 29.9, 100);
books[1] = new book(02, "数据结构", 39.9, 200);
books[2] = new book(03, "操作系统", 49.9, 500);

d.Put(books); // 将数组元素添加到方法中
d.Order(books); //订单
}

// 输出图书信息
public void Put(book[] ts) {
System.out.println("图书编号\t图书名称\t\t图书单价\t库存");
for (int i = 0 ; i < ts.length ; i++){ // 遍历数组,输出图书信息
System.out.println(ts[i].getNumber() + "\t\t" + ts[i].getName() + "\t\t" + ts[i].getPrice() + "\t" +ts[i].getKucun());
}
System.out.println("----------------------------------");
}

// 订单方法
public void Order(book[] books) {
Scanner in = new Scanner(System.in);
boolean b = true; // 定义一个boolean变量
double ZongJinEr = 0; // 记录商品总额
int Sum = 0; // 记录购买书本件数
while (b) { // 使用循环使购买图书可以重复购买
int flag=0; //定义一个变量作为合法编号判断
System.out.println("请输入要购买图书的编号:");
int Bian = in.nextInt();
System.out.println("请输入购买数量:");
int num = in.nextInt();
for (int i = 0 ; i < books.length ; i++){
// 遍历数组
if (Bian == books[i].getNumber()){
// 寻找图书对应的编号
if(num<=0||num>books[i].getKucun()){
System.out.println("该图书库存量为"+books[i].getKucun()+"\n请重新输入!");
continue;
}
books[i].setKucun(books[i].getKucun()-num);
System.out.println("订单编号:" + Bian);
System.out.println("购买书名:" + books[i].getName() + "\n订单总额:" + num*books[i].getPrice() + "\n交易明细,购买:" + books[i].getName() + num + "本");
ZongJinEr += num*books[i].getPrice(); // 商品价格相加
Sum += num; // 购买件数相加
flag++;
}

}
if(flag==0) System.out.println("非法编号!");
System.out.println("是否继续购买:");
String s = in.next();
if (s.equals("否")){ // 输入否循环结束
b = false;
System.out.println("一共购买:" + Sum + "本,共消费:" + ZongJinEr); // 打印购买件数,与总额
}
}
}
}

结果实例

pCgNO6P.png