librarytest.java

来自「VC6.0小型图书馆管理程序。建议具有书籍存储与信息检索、借阅者信息存储与检索、」· Java 代码 · 共 213 行

JAVA
213
字号
import javax.swing.JOptionPane;

class book{
  private int bnum;               //书号 
  private String bname;           //书名
  private int price;              //价格
  book(int b1,String b2,int b3){
    bnum=b1;
    bname=b2;
    price=b3;	
  }
  
  //获取书号
  int getBnum(){
    return(bnum);
  }
  
  //获取书名
  String getBname(){
    return(bname);
  }
  
  //获取书价
  int getPrice(){
    return(price);
  }
}

class student{
  private int snum;         //学生学号
  private String sname;     //学生姓名
  private int time;         //借阅期限
  private float fee;        //欠款
  book[] books;             //所借书 
  student(int s1,String s2,int s3,float s4,book[] s5){
    snum=s1;
    sname=s2;
    time=s3;
    fee=s4;
    books=s5;	
  } 
  
  //获取学生姓名
  int getSnum(){
    return(snum);	
  }
  
  //获取学生姓名
  String getSname(){
    return(sname);
  }
  
  //获取借阅期限
  int getTime(){
    return(time);	
  }
  
  //获取欠款
  float getFee(){
    return(fee);	
  }
  
  //获取在借书数目
  int getBooknum(){
    return(books.length);	
  }
  
  //借书
  boolean borrow(book b){
    if(books.length<7){
         book[] temp=new book[books.length+1];
         System.arraycopy(books,0,temp,0,books.length);
         temp[books.length]=b;
         books=new book[books.length+1];
         System.arraycopy(temp,0,books,0,temp.length);
         System.out.println("* * * * * * * * * * * * * * * * * * *");
         System.out.println("借书成功!");
         return(true); 
      }
      else{
         System.out.println("对不起,你所借书的数目超过七本!");
         return(false); 
      }
  }  
  
  //还书
  boolean returnBook(String s){
    int i,j=0;
    book[] temp=new book[books.length-1];
    boolean t=false;
    for(i=0;i<books.length;i++){
      if(books[i].getBname().equals(s)){
        t=true;
        break;
        }  
      else
        t=false;	
    }
    if(t==true){
      for(i=0;i<books.length;i++){
        if(books[i].getBname().equals(s)!=true){ 
          temp[j]=books[i]; 	
          j++;
        }
      }
      books=new book[books.length-1];
      System.arraycopy(temp,0,books,0,temp.length);
      System.out.println("* * * * * * * * * * * * * * * * * * *");
      System.out.println("还书成功!");
    }
    return(t);  
  }
  
  //付清欠款
  void payFee(double fee){
    if(this.fee<0){
      this.fee=0;
      System.out.println("欠款已付清!");
    }
    else 
      System.out.println("您没有欠款!");
  }
  
  //打印结束清单
  void printBooks(){
    int i;
    System.out.println("* * * * * * * * * * * * * * * * * * *");
    for(i=0;i<books.length;i++)
      System.out.println(books[i].getBname());
    System.out.println("* * * * * * * * * * * * * * * * * * *");
  }  
  
  //关键字查询 
  String[] search(String s){
    int i,j=0;
    boolean t=false;
    String[] temp=new String[books.length];
    for(i=0;i<books.length;i++)
       if(books[i].getBname().indexOf(s)!=-1){
         temp[j]=books[i].getBname();
         j++;
         t=true;       
       }  
    if(t==true)
       return(temp);   
    else{
       String[] temp1={"对不起,您没借此书!"};
       return(temp1);
    }
  }
}

//测试book类和student类
public class LibraryTest{
  public static void main(String agrs[]){
    int i;
    String input;
    
    //创建book类的8个对象
    book b1=new book(100,"计算机公共基础",12);
    book b2=new book(101,"QBASIC程序设计",21);
    book b3=new book(102,"C程序设计",23);
    book b4=new book(103,"实用数据结构",34);
    book b5=new book(104,"网页制作技术",20);
    book b6=new book(105,"计算机常用算法",25);
    book b7=new book(106,"计算机辅助绘图",40);
    book b8=new book(107,"微机原理及其应用",10);
    book[] books={b1,b2,b3,b4,b5,b6};
    
    //创建student类的对象
    student s=new student(10166,"张超",30,0,books);
    
    //打印学生类对象信息
    System.out.println(s.getSnum()+"\t"+s.getSname()+"\t借阅期限:"+s.getTime()+"\t欠款:"+s.getFee());	
   
    //打印借书清单
    s.printBooks(); 
    
    //借书(b8)
    if(s.borrow(b8)==true){
      	System.out.println("你已经借了"+s.getBooknum()+"本书");
      	s.printBooks();
    }
    
    //还书(b1) 
    if(s.returnBook(b1.getBname())==true){ 
        System.out.println("你已经借了"+s.getBooknum()+"本书");
        s.printBooks(); 
    }
    else
        System.out.println("对不起,还书失败,您没借此书!");
    
    //还书("实用数据结构") 
    if(s.returnBook("实用数据结构")==true){
        System.out.println("你已经借了"+s.getBooknum()+"本书");
        s.printBooks(); 
      }
      else
        System.out.println("对不起,还书失败,您没借此书!");
  
  //付清欠款
  s.payFee(0.5);
  
  //关键字查询
      input=JOptionPane.showInputDialog("请输入查询关键字:");
      System.out.println("* * * * * * * * * * * * * * * * * * *");
  //打印查询结果
      System.out.println("查询结果:");
      for(i=0;i<s.search(input).length;i++)
      	if(s.search(input)[i]!=null)
      	System.out.println(s.search(input)[i]);
  } 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?