用Java创建图书管理系统

编写一个图书类Book,成员变量包括:图书的书名、作者、月销量等属性,定义两个构造方法:一个不带参数,另一个带参数(初始化图书的相关属性);成员方法包括:用于设置书名、作者、月销量等属性的setBook()、用于输出书名、作者、月销量等数据的printBook(),编译、运行输出如下格式的信息:
书名:《*
作者:

月销售量:**本

程序分析

正常构建图书类,包括书的属性及增删改方法。建立图书对象数组用来存储数据。使用switch条件选择语句对程序进行整体控制

源代码

图书类Book类

package experiment.exp3;
import java.util.Scanner;
public class Book {
	private String bookname,authorname;
	private int sum,no;
	public Book()
	{}
	public Book(String bookname_init,String authorname_init,int num_init,int no)
	{
		bookname=bookname_init;authorname=authorname_init;sum=num_init;
	}
	public void setBook()
	{
		System.out.print("您要修改哪个位置1.书名2.作者3.销量");
		Scanner sc1=new Scanner(System.in);
		switch(sc1.nextInt())
		{
		case 1:
			System.out.println("请输入要更正的名字:");
			bookname=sc1.next();
			System.out.println("修改成功!");
			break;
		case 2:
			System.out.println("请输入更改作者的名字:");
			authorname=sc1.next();
			System.out.println("修改成功!");
			break;
		case 3:
			System.out.println("请输入校准后的销量:");
			sum=sc1.nextInt();
			System.out.println("校正成功!");
			sc1.close();
		}
	}
	public void display()
	{
		System.out.println("书名:《"+bookname+"》"+"书号"+no+"\n"+"作者:"+authorname+"\n"+"销量:"+sum);
	}
}

图书测试类(用来执行对图书类对象数组的增删改)

package experiment.exp3;
import java.util.Scanner;
public class bookTest {

	public static void main(String[] args) {
		Book[] b=new Book[10];
		b[0]=new Book("《留言》","张爱玲",200,0);
		b[1]=new Book("《送你一匹马》","三毛",300,1);
		b[2]=new Book("缘缘堂随笔","丰子恺",290,2);
		Scanner sc2=new  Scanner(System.in);
		int i=3;
		while(true)
		{
		System.out.println("您要进行的操作是:1.增加新书2.修改书籍信息3.查看书籍信息4.退出");
		switch(sc2.nextInt())
		{
		case 1:
			System.out.println("请输入书籍信息");
			if(i<9)
			{
				String s=sc2.next();
				b[i]=new Book(s,sc2.next(),sc2.nextInt(),i);
				System.out.println(s+"成功加入书库!");
				i++;
			}
			else
				System.out.println("已达存储书籍上限!");
			break;
		case 2:
			System.out.println("请输入您要修改的书籍的标号:");
			int c=sc2.nextInt();
			if(c<i) 
			{
			b[c].setBook();
			}
			else
				System.out.println("该书不存在");
			break;
		case 3:
			System.out.println("请输入您要查看的书籍书号:输入10查看全部");
			int a=sc2.nextInt();
			if(a<10)
				b[a].display();
			else
			{
				int k;
				for(k=0;k<i;k++)
					b[k].display();
			}
			break;
		case 4:
			sc2.close();
			System.exit(0);
				
		}
		}
	}

}

运行结果

在这里插入图片描述
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玖语巴黎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值