码迷,mamicode.com
首页 > 其他好文 > 详细

2017.12.14 图书管理系统

时间:2017-12-14 22:53:09      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:port   增加   --   返回   构造方法   input   void   class   length   

Manager类

package demo55;
import java.util.*;
public class Manager {
    Scanner sc = new Scanner(System.in);
    int size = 0;
    
    public void Menu(){ 
        int num;
            System.out.println("======欢迎使用图书管理系统======");
            System.out.println("1.查看图书");
            System.out.println("2.增加图书");
            System.out.println("3.删除图书");
            System.out.println("4.修改图书");
            System.out.println("5.借书图书");
            System.out.println("6.还书图书");
            System.out.println("7.退出");
            System.out.println("8.排行榜");
            System.out.println("请选择");
            num = sc.nextInt();
            
            switch (num) {
            case 1:
                System.out.println("1.查看图书");
                System.out.println("图书名称\t图书状态\t借出次数");
                //init();    这里不能放在这里不然size会自动增加  4、5、6
                //查看图书(遍历数组)
                for(int i= 0;i<size;i++){
                    String content ="";
                    if(books[i].status==0)
                    {
                        System.out.println("未借");
                        }else{
                            System.out.println("已借");
                            }
                    
                    System.out.println(books[i].Bookname+"\t"+books[i].lendCount+"\t"+books[i].status);
                }
                break;
            case 2:
                addBook();//构造方法    
                break;
            case 3:
                System.out.println("3.删除图书");
                break;
            case 4:
                System.out.println("4.修改图书");
                break;
            case 5:
                System.out.println("5.借书图书");
                break;
            case 6:
                System.out.println("6.还书图书");
                break;
            case 7:
                System.out.println("7.退出");
                break;
            case 8:
                System.out.println("8.排行榜");
                break;
                
            default:
                    
                break;
                }
                method();//记得写入这个方法 
            }
    
    String answer = null;
    public void method(){
        System.out.println("是否继续(Y/N):");
        answer= sc.next();
        if(answer.equalsIgnoreCase("y")){
            Menu();
        }else{
            System.out.println("欢迎下次使用!");
        }
    }
    
    Book[] books = new Book[50];//生成对象数组
    public void init(){   //初始化三本书的方法
        //第一本书
        books[0]= new Book();    //创建book[0] 的一个对象 
        books[0].Bookname = "活着";
        books[0].lendCount = 0;
        books[0].status = 1;
        size++;
        
        //第二本书
        books[1]= new Book();
        books[1].Bookname = "希望";
        books[1].lendCount = 0;
        books[1].status = 1;
        size++;
        
        //第三本书
        books[2]= new Book();
        books[2].Bookname = "软件工程";
        books[2].lendCount = 0;
        books[2].status = 1;
        size++;
    }
    
    
    //2.添加图书操作
    public void addBook(){
        System.out.print("2.添加图书");
        System.out.println("请输入你要添加的书名:");
        String inputbookname = sc.next();
        
        //创建新图书的一个对象
        Book newBook = new Book();
        newBook.Bookname = inputbookname;
        
        //把新创建的图书对象存入到数组中的位置,
        //books[3]= new Book();这个方法定死了
        for(int i=0;i<books.length;i++){
            if(books[i]==null){
                books[i]=newBook;
                size++;
                break;//如果没有加这个就会输出50本书
            }
        }
        /*通过size来控制当前位置
         
          books[size] = newBook;
          size++;//size要改变,+1
          */    
    }
    
    
    //检索图书的存在
    public int searchBook(String delBookName){
        for(int i=0;i<size;i++){
            if(books[i].Bookname.equals(delBookName)){
                return i;
            }
        }
        return -1;//没有找到书
    }
    public void delBook(){
        System.out.println("请选择你需要删除的图书名字:");   
        String delBookName = sc.next();
        
        //输入的  书去数组库中检索,检索到了,则返回当前此书的下标
        int index = searchBook(delBookName);
        if(index!=-1){
            if(books[index].status==0){
                //可以删除
                books[index] = null;
                System.out.println("恭喜,已成功删除图书!");
                //每次删除一本新书,size-1
                size--;
                
                //位置
                while(books[index]!=null){
                    books[index] = books[index+1];
                    index++;
                }
                
                //查看所有图书
                
                
            }else{
                //不可以删除
                System.out.println("此书为已借出状态,不可删除!");
            }
        }else{
            //此书不存在
            System.out.println("你输入的删除图书不存在");
        }
    }
}

2017.12.14 图书管理系统

标签:port   增加   --   返回   构造方法   input   void   class   length   

原文地址:http://www.cnblogs.com/qichunlin/p/8040304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!