导航:首页 > 编程语言 > 图书信息管理系统java

图书信息管理系统java

发布时间:2024-10-07 18:21:48

java使用面向对象编程思维编写图书管理系统:增加,查询,修改,删除,退出,怎么写

package com.bms;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

// book对象
public class Book {
private String bId; // 编号
private String bName; // 书名

// getset方法

public String getbId() {
return bId;
}

public void setbId(String bId) {
this.bId = bId;
}

public String getbName() {
return bName;
}

public void setbName(String bName) {
this.bName = bName;
}

//构造方法
public Book() {
}

public Book(String bId, String bName) {
this.bId = bId;
this.bName = bName;
}

/*
* 增加
* */
public static List<Book> add(List<Book> list) {
Scanner sn = new Scanner(System.in);
System.out.print("请输入编号:");
String bid = sn.next();
System.out.print("请输入名称:");
String bName = sn.next();
Book book = new Book(bid, bName);
for (Book b : list) {
if (b.bId.equals(book.bId)) {
System.out.println("编号重复,请重新输入!");
return list;
}
}
list.add(book);
System.out.println("添加成功!");
return list;
}

/*
* 查询
* */
public static void query(List<Book> list) {
System.out.println("编号\t书名");
for (Book b : list) {
System.out.println(b.getbId() + "\t" + b.getbName());
}
}

/*
* 修改
* */
public static void update(List<Book> list) {
query(list);
Scanner sc = new Scanner(System.in); // 键盘输入的对象
System.out.print("请输入编号:");
String s = sc.next();
Integer id = null;
for (int i = 0; i < list.size(); i++) {
id = list.get(i).getbId().equals(s) ? i : null;
}
if (id == null) {
System.out.println("输入的编号不存在,请重新选择!");
return;
}
System.out.print("请输入新的书名:");
String newName = sc.next();
list.get(id).setbName(newName);
System.out.print("修改成功!");
}

/*
* 删除
* */
public static void del(List<Book> list) {
query(list);
Scanner sc = new Scanner(System.in); // 键盘输入的对象
System.out.print("请输入编号:");
String s = sc.next();
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getbId().equals(s)) {
list.remove(i);
return;
}

}
System.out.println("输入的编号不存在,请重新选择!");
}

}

/*
* 测试*/
class Test {
public static void main(String[] args) {
List<Book> bookList = new ArrayList<>(); // 存放所有图书的列表
bookList.add(new Book("1", "Java 基础")); // 图书的列表添加一本图书
System.out.print("欢迎进入图书管理系统,");
boolean b = true;
while (b) {
System.out.print("请选择:\n1.增加\n2.查询\n3.修改\n4.删除\n5.退出\n(输入序号):");
Scanner sn = new Scanner(System.in); // 键盘输入的对象
String select = sn.next();
switch (select) {
case "1":
System.out.println("您选择了增加");

Book.add(bookList);
break;
case "2":
System.out.println("您选择了查询:");
Book.query(bookList);
break;
case "3":
System.out.println("您选择了修改");
Book.update(bookList);
break;
case "4":
System.out.println("您选择了删除");
Book.del(bookList);
break;
case "5":
System.out.println("您选择了退出");
b = false;
System.out.println("退出程序!");
break;
default:
System.out.println("输入错误的序号,请重新输入");
break;
}
}

}
}

⑵ 用java编写一个 图书馆图书借阅管理系统

---------------------------------------------------
给你修改了三个地方:

1.borrowBooks方法中,将System.out.println("你要借吗?"); 改为:
System.out.println("你要借吗?输入1表示借,其他数字表示不借。");

保证输入的时候输入的数字,否则会报出异常。

2.borrowBooks方法中,将self[score] = all[9]; 改为:self[score] = all[i];

如果是all[9],那么就始终是最后一本书籍信息了。

3.have方法中,你是想将所借的书籍信息都打印出来。修改的比较多,下面注释代码是原来的。
void have(Books[] self) {
// for (int i = 0; i < 2; i++) {
// self[i].showBookInfo();
// }

for (int i = 0; i < 3; i++) {
if(self[i]!=null)
self[i].showBookInfo();
}
}

****************** 附上所有代码:*************************

import java.util.Scanner;

public class TestBook {
public static void main(String[] args) {
Books all[] = new Books[10];
Books self[] = new Books[3];
all[0] = new Books("java", 1, "12345", "tom", 34.0f, "人民出版社");
all[1] = new Books("c", 2, "12346", "tnn", 31.0f, "人民出版社");
all[2] = new Books("c++", 3, "12445", "mm", 35.0f, "人民出版社");
all[3] = new Books("c#", 4, "12365", "tt", 38.0f, "人民出版社");
all[4] = new Books("j2se", 5, "13345", "tosm", 31.1f, "人民出版社");
all[5] = new Books("j2ee", 6, "18345", "ttm", 32.0f, "人民出版社");
all[6] = new Books("jsp", 7, "12335", "cc", 33.0f, "人民出版社");
all[7] = new Books("net", 8, "12341", "bb", 36.0f, "人民出版社");
all[8] = new Books("ip", 9, "12343", "aa", 37.0f, "人民出版社");
all[9] = new Books("tcp", 10, "22345", "jj", 39.0f, "人民出版社");
Readers r = new Readers("xiaoming", 101, "1", 3);
r.searchAllBooks(all);
r.borrowBooks(all, self);
r.have(self);
r.give(all, self);
}
}

class Readers {
Scanner scan = new Scanner(System.in);
String names;
int nums;
String classes;
int grade;
int score = 0;

// Books self[]=new Books[3];
Readers(String n, int u, String c, int g) {
names = n;
nums = u;
classes = c;
grade = g;
}

void searchAllBooks(Books[] all) {// 查书
for (int i = 0; i < 10; i++)
all[i].showBookInfo();
// self[score]=all[0];
}

void give(Books[] all, Books[] self) {// 还书
System.out.println("请输入您要还的书的书号");
int n = scan.nextInt();
for (int i = 0; i < 10; i++) {
if (n == all[i].num) {
for (int j = 0; j < 3; j++) {
if (self[j] == all[i]) {
self[j] = null;
System.out.println("还书成功");
}
}
}
}
}

void have(Books[] self) {
// for (int i = 0; i < 2; i++) {
// self[i].showBookInfo();
// }
for (int i = 0; i < 3; i++) {
if(self[i]!=null)
self[i].showBookInfo();
}
}

void giveMoney() {

}

void borrowBooks(Books[] all, Books[] self) {
System.out.println("请输入您要查找的书名:");
String n = scan.next();
int i;
for (i = 0; i < 10; i++) {
if (n.equals(all[i].name)) {
all[i].showBookInfo();
break;
}
}
//System.out.println("你要借吗?");
System.out.println("你要借吗?输入1表示借,其他数字表示不借。");
int j;
j = scan.nextInt();
if (j == 1) {
System.out.println("借阅成功");
//self[score] = all[9];
self[score] = all[i];
score += 1;

}
if (score < 4) {
System.out.println("您还可以借阅" + (3 - score) + "本");
} else {
System.out.println("对不起,一个人只能借3本");
}
}
}

class Books {
String name;
int num;
String ISBN;
String writer;
float price;
String publisher;

Books(String n, int u, String i, String w, float p, String l) {
name = n;
num = u;
ISBN = i;
writer = w;
price = p;
publisher = l;
}

void showBookInfo() {
System.out.println("**************************");
System.out.println("书名:" + name);
System.out.println("索书号:" + num);
System.out.println("ISBN号:" + ISBN);
System.out.println("价格:" + price);
System.out.println("出版社:" + publisher);
System.out.println("**************************");
}

}

----------------------------------------------------

阅读全文

与图书信息管理系统java相关的资料

热点内容
加载源码分析 浏览:227
贵州服务器云存储 浏览:42
迪士尼程序员待遇 浏览:450
黑程序员语录 浏览:609
微信背景图用什么app 浏览:719
linuxdate显示 浏览:689
linux平台移植 浏览:95
差个程序员可以做产品吗 浏览:325
在阿里程序员几年才能领到蚂蚁 浏览:416
指数运算法则高中 浏览:488
跳板机怎么登录linux服务器 浏览:292
平台和app有什么不同 浏览:734
哈希算法的内容 浏览:601
ivreg2命令固定效应 浏览:413
一个软件的服务器地址怎么看 浏览:700
干程序员可以干兼职吗 浏览:640
go中文pdf 浏览:530
电脑dns的服务器地址设置 浏览:530
编程出1000以内水仙花数 浏览:113
程序员多大转行 浏览:879