• 图书管理系统(面向对象+数组)


    package KindMethod2;

    //           属性块

    public class Library {

        private String name;        //图书名称
        private int state;          //借阅状态,0:可借阅,1:已借出
        private int date;           //借出日期
        private int count;          //借出次数

        public Library() {

        }

        public Library(String name, int state, int date, int count) {
            this.name = name;
            this.state = state;
            this.date = date;
            this.count = count;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public int getState() {
            return state;
        }

        public void setState(int state) {
            this.state = state;
        }

        public int getDate() {
            return date;
        }

        public void setDate(int date) {
            this.date = date;
        }

        public int getCount() {
            return count;
        }

        public void setCount(int count) {
            this.count = count;
        }
    }
     

    1. package KindMethod2;
    2. public class BookRealize {
    3. private Library[] librarie; //存储图书数组
    4. private int total; //数组下标
    5. public Library[] getLibrarie() {
    6. return librarie;
    7. }
    8. public void setLibrarie(Library[] librarie) {
    9. this.librarie = librarie;
    10. }
    11. public int getTotal() {
    12. return total;
    13. }
    14. public void setTotal(int total) {
    15. this.total = total;
    16. }
    17. public BookRealize(int tota){
    18. librarie=new Library[tota];
    19. }
    20. // 新增图书
    21. public boolean addBook(Library library){
    22. if(total<0 || total>librarie.length){
    23. return false;
    24. }else{
    25. librarie[total++]=library;
    26. return true;
    27. }
    28. }
    29. // 查看图书
    30. public Library[] showBook(){
    31. Library[] newlibraries= new Library[total];
    32. for(int i=0 ;i
    33. newlibraries[i]=librarie[i];
    34. }
    35. return newlibraries;
    36. }
    37. // 删除图书
    38. public boolean deleteBook(int num){
    39. if(num>total || num<0){
    40. return false;
    41. }else{
    42. Library[] newLibraries=new Library[total];
    43. for(int i=num;i
    44. librarie[i]=newLibraries[i];
    45. }
    46. librarie[--total]=null;
    47. return true;
    48. }
    49. }
    50. // 借出图书
    51. public boolean borrow(int num){
    52. if(num>total || num<0 || librarie[num].getState()==1){
    53. return false;
    54. }else{
    55. librarie[num].setState(1);
    56. librarie[num].setCount(librarie[num].getCount()+1);
    57. return true;
    58. }
    59. // Library[] newlibraries1 = new Library[total];
    60. // int num=0;
    61. // for(int j=0;j
    62. // if (newlibraries1[j].getState()==0){
    63. // newlibraries1[num++]=newlibraries1[j];
    64. // }
    65. // }
    66. // return newlibraries1;
    67. }
    68. // 归还图书
    69. public boolean retur(int num){
    70. if(num>total || num<0 || librarie[num].getState()==0){
    71. return false;
    72. }else{
    73. librarie[num].setState(0);
    74. return true;
    75. }
    76. }
    77. }
    1. package KindMethod2;
    2. import java.util.Scanner;
    3. public class Test {
    4. BookRealize bookRealize = new BookRealize(6);
    5. public Test(){
    6. Library library =new Library("三国演义",0,21,23);
    7. bookRealize.addBook(library);
    8. }
    9. Scanner sc =new Scanner(System.in);
    10. public void setting(){
    11. boolean bool=true;
    12. do{
    13. System.out.println("----------------------迷你图书管理系统---------------------");
    14. System.out.println("\t\t1、新增图书");
    15. System.out.println("\t\t2、查看图书");
    16. System.out.println("\t\t3、删除图书");
    17. System.out.println("\t\t4、借出图书");
    18. System.out.println("\t\t5、归还图书");
    19. System.out.println("\t\t6、退出图书系统");
    20. System.out.print("请选择:");
    21. int choose = sc.nextInt();
    22. switch (choose){
    23. case 1:
    24. addBook();
    25. break;
    26. case 2:
    27. showBook();
    28. break;
    29. case 3:
    30. deleteBook();
    31. break;
    32. case 4:
    33. borrowBook();
    34. break;
    35. case 5:
    36. retueBook();
    37. break;
    38. case 6:
    39. bool=false;
    40. System.out.println("已退出");
    41. }
    42. }while(bool);
    43. }
    44. // 增加
    45. public void addBook(){
    46. System.out.println("--------------------新增图书----------------------");
    47. System.out.print("图书名称");
    48. String name = sc.next();
    49. System.out.print("借阅状态(0:可借阅,1:已借出)");
    50. int state = sc.nextInt();
    51. System.out.print("借出日期(当月1-31号)");
    52. int date = sc.nextInt();
    53. System.out.print("借出次数");
    54. int count = sc.nextInt();
    55. Library library=new Library(name,state,date,count);
    56. boolean boole=bookRealize.addBook(library);
    57. if(boole==true){
    58. System.out.println("\t添加成功");
    59. }else{
    60. System.out.println("\t添加失败");
    61. }
    62. }
    63. // 查看图书
    64. public void showBook(){
    65. Library[] books = bookRealize.showBook();
    66. if(books==null){
    67. System.out.println("你没有任何图书");
    68. return;
    69. }
    70. System.out.println("编号"+"\t\t名字"+"\t\t借阅状态"+"\t\t借出日期"+"\t借出次数");
    71. for(int i=0;i
    72. System.out.println((i+1)+"\t\t"+books[i].getName()+"\t\t"+books[i].getState()+"\t\t"+
    73. books[i].getDate()+"\t\t"+books[i].getCount());
    74. }
    75. return;
    76. }
    77. // 删除图书
    78. public void deleteBook(){
    79. Library[] books = bookRealize.showBook();
    80. System.out.println("编号"+"\t\t名字"+"\t\t借阅状态"+"\t\t借出日期"+"\t\t借出次数");
    81. for(int i=0;i
    82. System.out.println((i+1)+"\t\t"+books[i].getName()+"\t\t"+books[i].getState()+"\t\t"+
    83. books[i].getDate()+"\t\t"+books[i].getCount());
    84. }
    85. System.out.print("请输入要删除图书的编号:");
    86. int num= sc.nextInt();
    87. boolean boole =bookRealize.deleteBook(num-1);
    88. if (boole==true){
    89. System.out.println("删除图书成功");
    90. }else{
    91. System.out.println("删除图书失败");
    92. }
    93. return;
    94. }
    95. // 借出图书
    96. public void borrowBook(){
    97. Library[] books = bookRealize.showBook();
    98. System.out.println("编号"+"\t\t名字"+"\t\t借阅状态"+"\t\t借出日期"+"\t\t借出次数");
    99. for(int i=0;i
    100. System.out.println((i+1)+"\t\t"+books[i].getName()+"\t\t"+books[i].getState()+"\t\t"+
    101. books[i].getDate()+"\t\t"+books[i].getCount());
    102. }
    103. System.out.print("请输入要借书的书号:");
    104. int num = sc.nextInt();
    105. boolean boole=bookRealize.borrow(num-1);
    106. if(boole==true){
    107. System.out.println("借书成功");
    108. }else{
    109. System.out.println("借书失败,输入有误或已经借出去了");
    110. }
    111. return;
    112. }
    113. // 归还图书
    114. public void retueBook(){
    115. Library[] books = bookRealize.showBook();
    116. System.out.println("编号"+"\t\t名字"+"\t\t借阅状态"+"\t\t借出日期"+"\t\t借出次数");
    117. for(int i=0;i
    118. System.out.println((i+1)+"\t\t"+books[i].getName()+"\t\t"+books[i].getState()+"\t\t"+
    119. books[i].getDate()+"\t\t"+books[i].getCount());
    120. }
    121. System.out.print("请输入要还书的书号:");
    122. int num = sc.nextInt();
    123. boolean boole=bookRealize.borrow(num-1);
    124. if(boole==true){
    125. System.out.println("还书成功");
    126. }else{
    127. System.out.println("还书失败,输入的书号有误");
    128. }
    129. return;
    130. }
    131. public static void main(String[] args) {
    132. Test test = new Test();
    133. test.setting();
    134. }
    135. }

  • 相关阅读:
    手机如何压缩照片?压缩方法分享
    【面试题-Java】2022面试题干货汇总(持续更新)
    excel导入导出demo笔记
    Lombok注解的简单使用
    JAVA电视设备租借系统计算机毕业设计Mybatis+系统+数据库+调试部署
    Java毕业设计 基于springboot vue大学新生报到系统
    Harris/Shi-Tomasi角点检测
    k8s--基础--23.6--认证-授权-准入控制--通过kubeconfig登陆dashboard
    第一个 Python 程序
    比较一个5点的结构对平面的分割
  • 原文地址:https://blog.csdn.net/fool_Java/article/details/126234767