package com.hui.购书系统;
import java.util.Arrays;
import java.util.Scanner;
public class 购书系统 {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
book custom = new book();
System.out.println("\t欢迎来到1703图书市场!");
custom.printBooks();
while(true){
System.out.print("[0 退出] [1 获取图书列表] [2 查找图书] [3 购书]\n请选择:");
int index = input.nextInt();
if(index == 0)
break;
else if(index == 1)
custom.printBooks();
else if(index == 2){
System.out.print("请输入查找编号: ");
int n = input.nextInt();
custom.searchBook(n);
}
else if(index == 3){
System.out.print("请输入要购书的编号: ");
int n = input.nextInt();
custom.buyBooks(n);
}
}
System.out.println("感谢使用!");
input.close();
}
}
class book{
private String[][] table = {
{ "编号", "书名", "价格¥", "作者", " 出版社","\t库存" },
{ "01", "西游记", "34.8", "吴承恩", "商务印书馆","31" },
{ "02", "三国演义", "33.5", "罗贯中", "浙江出版社","22" },
{ "03", "水浒传", "38.5", "施耐庵", "中国出版社","12" },
{ "04", "红楼梦", "29.5", "曹雪芹", "长江出版社","12" }
};
private int countarr[] = new int[0]; //购物车
// 查找
public void searchBook(int n){
for(int i=0;i<table[0].length;i++){
System.out.print(table[0][i]+"\t");
}
System.out.println();
for(int i=0;i<table[n].length;i++){
System.out.print(table[n][i]+"\t");
}
System.out.println();
System.out.println();
}
// 打印
public void printBooks() {
for(int i=0;i<table[0].length;i++)
System.out.print(table[0][i]+"\t");
System.out.println();
System.out.println("---------------------------------------------------");
for(int i=1;i<table.length;i++){
for(int j=0; j<table[i].length;j++){
System.out.print(table[i][j]+"\t");
}
System.out.println();
}
System.out.println();
}
// 购书
public void buyBooks(int n){
// 添加购物车(动态增长数组 count 为初始数组)
int countTemp[] = new int[countarr.length+1]; //生成一个大1的临时数组
//将旧值赋给临时数组
System.arraycopy(shopingArr, 0, countTemp, 0, shopingArr.length);
countTemp[countTemp.length-1] = n; //将当前n 追加给临时数组
countarr = countTemp; //把临时数组地址赋给旧数组
// 输出购物车
System.out.println("购物车:");
for(int i=0;i<table[0].length-1;i++)
System.out.print(table[0][i]+"\t");
System.out.println();
for(int j=0;j<countarr.length;j++){
for(int i=0;i<table[countarr[j]].length-1;i++){
System.out.print(table[countarr[j]][i]+"\t");
}
System.out.println();
}
System.out.println();
// 减库存
int number[] = {Integer.parseInt(table[n][table[n].length-1]) };
number[0]--;
String numberString = Arrays.toString(number);
String resultNumber = numberString.substring(1,numberString.length()-1);
table[n][table[n].length-1] = resultNumber;
}
}