给你修改了三个地方:
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 = 0i <2i++) {
// self[i].showBookInfo()
// }
for (int i = 0i <3i++) {
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 = 0i <10i++)
all[i].showBookInfo()
// self[score]=all[0]
}
void give(Books[] all, Books[] self) {// 还书
System.out.println("请输入您要还的书的书号")
int n = scan.nextInt()
for (int i = 0i <10i++) {
if (n == all[i].num) {
for (int j = 0j <3j++) {
if (self[j] == all[i]) {
self[j] = null
System.out.println("还书成功")
}
}
}
}
}
void have(Books[] self) {
// for (int i = 0i <2i++) {
// self[i].showBookInfo()
// }
for (int i = 0i <3i++) {
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 = 0i <10i++) {
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("**************************")
}
}
----------------------------------------------------
package Managementimport java.util.List
import java.util.ArrayList
public class Management {
public static List<Book> bookList=null
public Management() 肆扰橘{
// TODO Auto-generated constructor stub
bookList=new ArrayList<Book>(100)
}
public void addbook(Book book)
{
bookList.add(book)
}
public Book[] findBook(String bookName)
{
Book [] book=new 裂团Book[100]
int j=0
for(int i=0i<bookList.size()i++)
{
if(bookName.equals(bookList.get(i).getName()))
{
book[j]=bookList.get(i)
j++
}
}
return book
}
public Book[] ShowAllBook()
{
Book[]book=new Book[100]
for(int i=0i<bookList.size()i++)
{
book[i]=bookList.get(i)
bookList.get(i).printInfo()
}
return book
}
}
class Book
{
private String name
private String author
public String getName() {
return name
}
public void setName(String name) {
this.name = name
}
public String getAuthor() {
return author
}
public void setAuthor(String author) {
this.author = author
}
void printInfo()
{
System.out.println("书名为"+this.name+"作者为"+this.author)
}
}
class Reader
{
private String name
public void borrowbook(Book book) {
Management liabry=new Management()
for(int i=0i<liabry.bookList.size()i++)
{ if(book.getAuthor().equals(liabry.bookList.get(i).getAuthor())&&book.getName().equals(liabry.bookList.get(i).getName()))
{
liabry.bookList.remove(i)
System.out.println("借书成功!")
break
}
}
}
public void backbook(Book book) 李埋{
Management liabry=new Management()
liabry.addbook(book)
System.out.println("还书成功")
}
}
//只实现了图书的添加package com.suncheng.main
import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.FileWriter
import java.io.IOException
import 慎哗旁java.io.InputStreamReader
public class Main {
//路径
private final static String PATH = "D:\\"
//图书录入.txt
private final static String TSLR = PATH+"图书录入.txt"
//人员宽橡信息.txt
private final static String RYXX = PATH+"人员信息.txt"
//借还书.txt
private final static String JS_HS = PATH+"借还书.txt"
static{
try {
String[][] arr = {{"图书ID,图书名称",TSLR},{"人员ID,姓名",RYXX},{"借还ID,借书人,开始借书时间,最终还书截至时间,还书时间,是否已还",JS_HS}}
for(int i = 0 i < arr.length i++){
getTitle(arr[i][0], arr[i][1])
}
} catch (IOException e) {
throw new RuntimeException("系统出现问题,请联系管理员!")
}
}
{
try {
init()
} catch (IOException e) {
e.printStackTrace()
}
}
public static void main(String[] args) throws IOException {
new Main()
}
//初始化菜单
private void init() throws IOException{
System.out.println("++++++++++++借书管理系统++++++++++++")
System.out.println("\t1). 图书的录入")
System.out.println("\t2). 人员信息的录入")
System.out.println("\t3). 图书的查询")
System.out.println("\t4). 借书的录入")
System.out.println("\t5). 还书的录入")
System.out.println("\t6). 人员借阅信芦轿息的显示")
System.out.println("请输入相应菜单:")
try {
int num = Integer.parseInt(new BufferedReader(new InputStreamReader(System.in)).readLine())
switch(num){
case 1 :
getTSLR()
break
}
} catch (Exception e) {
e.printStackTrace()
}
}
//通用添加标题方法
private static void getTitle(String split,String path) throws IOException{
String[] arr = split.split(",")
BufferedWriter out = new BufferedWriter(new FileWriter(path))
for(int i = 0 i < arr.length i++){
out.write(arr[i]+"\t")
}
out.newLine()
out.close()
}
//添加图书方法
private boolean getTSLR() throws IOException{
boolean flag = false
FileWriter fw = new FileWriter(this.TSLR,true)
BufferedReader br = getSystem_In()
while(true){
System.out.println("请输入图书ID")
String id = br.readLine()
System.out.println("请输入图书姓名")
String name = br.readLine()
fw.write(id+"\t")
fw.write(name+"\t")
fw.write("\r\n")
System.out.println("是否继续添加 Y、N")
if(!"y".equalsIgnoreCase(br.readLine())){
break
}
}
fw.close()
br.close()
return flag
}
private BufferedReader getSystem_In(){
return new BufferedReader(new InputStreamReader(System.in))
}
}
//图书类
class Book{
private int id //图书ID
private String name //图书名称
}
//人员类
class Person{
private int id //人员ID
private String name //姓名
}
//借还信息类
class Person_Book{
private int id //借还ID
private String person //借书人
private String startDate //开始借书时间
private String stopDate //最终还书截至时间
private String hsDate //还书时间
private boolean flag //是否已还 true还,false未
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)