java實現(xiàn)簡單圖書管理系統(tǒng)
本文實例為大家分享了java實現(xiàn)簡單圖書管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
JAVA練習(xí)的作業(yè),題目如下:
設(shè)計一個圖書管理系統(tǒng)類和用戶類,要求具有以下功能:
(1). 查詢和修改圖書信息。
(2). 增加和刪除圖書信息。
(3). 個人借閱信息查詢。
(4). 圖書歸還功能
(5). 用戶管理功能和退出程序功能(注:用戶信息可以保存在內(nèi)存即可)
上代碼:
User.java
public class User { ?? ?String id; ?? ?String name; ?? ?int rentNumber; ?? ?Book Rent[]; ?? ?User(String id,String name){ ?? ??? ?rentNumber=0; ?? ??? ?this.id = id; ?? ??? ?this.name = name; ?? ??? ?Rent = new Book[15]; ?? ??? ?for(int i=0;i<15;i++){ ?? ??? ??? ? Rent[i]=new Book("Z999"," "); ?? ??? ?} ?? ?} ?? ?void RentBook(Book b){ ?? ??? ?Rent[rentNumber]=b; ?? ??? ?rentNumber++; ?? ?} ?? ?void Return(String bookId){ ?? ??? ?int key=13; ?? ??? ?for(int i=0;i<15;i++){ ?? ??? ??? ?if(bookId.equals(Rent[i].bookId)){ ?? ??? ??? ??? ?key =i; ?? ??? ??? ?} ?? ??? ?} ?? ??? ?for(int i=key;i<14;i++){ ?? ??? ??? ?Rent[key].setName(Rent[key+1].bookName); ?? ??? ??? ?Rent[key].setId(Rent[key+1].bookId); ?? ??? ?} ?? ??? ?rentNumber--; ?? ?} ?? ? ?? ?void RentList(){ ? ? ? //借閱信息 ?? ??? ?if(rentNumber>0){ ?? ??? ??? ?System.out.println("當(dāng)前借閱圖書:"); ?? ??? ??? ?for(int i=0;i<rentNumber;i++){ ?? ??? ??? ??? ?Rent[i].display(); ?? ??? ??? ?} ?? ??? ?} ?? ??? ? ?? ??? ?else System.out.println("當(dāng)前無借閱圖書"); ?? ?} }
Ex8.java
class Book{ ? //圖書類 ?? ?String bookId; ?? ?String bookName; ?? ?Book(String Id,String Name){ ?? ??? ?bookId = Id; ?? ??? ?bookName = Name; ?? ?} ?? ?void setId(String Id){ ?? ??? ?bookId = Id; ?? ?} ?? ?void setName(String name){ ?? ??? ?bookName = name; ?? ?}?? ? ?? ?void display(){ ?? ??? ?System.out.println("Id:"+bookId+" ?"+"書名:"+bookName); ?? ?} } class Library{ ? ?//系統(tǒng)類 ?? ?Book bookList[]; ?? ?int bookNumber; ?? ?Library(){ ?? ??? ?bookNumber=0; ?? ??? ? bookList = new Book[30]; ?? ??? ?for(int i=0;i<30;i++){ ?? ??? ??? ? bookList[i]=new Book("Z999"," "); ?? ??? ?} ?? ?} ?? ?void AddBook(Book b){ ?//增加 ?? ??? ?bookList[bookNumber]=b; ?? ??? ?bookNumber++; ?? ?} ?? ?void FindBook(String Id){ ? ? ? ? ? ? ?//查詢 ?? ??? ?for(int i=0;i<30;i++){ ?? ??? ??? ?if(Id.equals(bookList[i].bookId)){ ?? ??? ??? ??? ?bookList[i].display(); ?? ??? ??? ?} ?? ??? ?} ?? ?} ?? ?void RewriteBook(String Id,String Name){//修改 ?? ??? ?for(int i=0;i<30;i++){ ?? ??? ??? ?if(Id.equals(bookList[i].bookId)){ ?? ??? ??? ??? ?bookList[i].setName(Name); ?? ??? ??? ?}?? ??? ??? ? ?? ??? ?} ?? ?} ?? ?void DeleteBook(String Id){ ?//刪除 ?? ??? ?int key=28; ?? ??? ?for(int i=0;i<30;i++){ ?? ??? ??? ?if(Id.equals(bookList[i].bookId)){ ?? ??? ??? ??? ?key =i; ?? ??? ??? ?} ?? ??? ?} ?? ??? ?for(int i=key;i<29;i++){ ?? ??? ??? ?bookList[key].setName(bookList[key+1].bookName); ?? ??? ??? ?bookList[key].setId(bookList[key+1].bookId); ?? ??? ?} ?? ?} } public class Ex8{ ?? ?public static void main(String args[]){ ?? ??? ?Book book1= new Book("A001","Python數(shù)據(jù)分析實戰(zhàn)"); ?? ??? ?Book book2 = new Book("A002","Python機器學(xué)習(xí)"); ?? ??? ?Book book3 = new Book("A003","C++基礎(chǔ)教程"); ?? ??? ?Library library = new Library(); ?? ??? ?library.AddBook(book1); ? ? //增加圖書 ?? ??? ?library.AddBook(book2); ?? ??? ?library.AddBook(book3); ?? ??? ?library.FindBook("A002"); ? ?//查詢圖書 ?? ??? ?library.RewriteBook("A001", "碼農(nóng)翻身");//修改圖書 ?? ??? ?book1.display(); ?? ??? ?library.DeleteBook("A001");//刪除圖書 ?? ??? ?User Bob = new User("20181532", "Bob"); ?? ??? ?Bob.RentBook(book3); ? ?//借閱圖書 ?? ??? ?Bob.RentList(); ? ? ? ? //個人借閱信息查詢。 ?? ??? ?Bob.Return("A003"); ? ? //歸還圖書 ?? ??? ?Bob.RentList(); ? ?? ??? ??? ??? ? ?? ?} }
主要使用了對象數(shù)組。
沒有用菜單,分為兩個文件,User.java和Ex8.java
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
在IDEA中安裝scala、maven、hadoop遇到的問題小結(jié)
這篇文章主要介紹了在IDEA中安裝scala、maven、hadoop遇到的問題小結(jié),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10java實現(xiàn)String類型和Date類型相互轉(zhuǎn)換
很多人表示,java將string類型轉(zhuǎn)為date類型不知道應(yīng)該怎樣做,本文就來介紹一下java實現(xiàn)String類型和Date類型相互轉(zhuǎn)換,具有一定的參考價值,感興趣的可以了解一下2023-10-10java 中Comparable與Comparator詳解與比較
這篇文章主要介紹了java 中Comparable與Comparator詳解與比較的相關(guān)資料,需要的朋友可以參考下2017-04-04解決springboot項目上傳文件出現(xiàn)臨時文件目錄為空的問題
這篇文章主要介紹了解決springboot項目上傳文件出現(xiàn)臨時文件目錄為空的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09Spring內(nèi)置任務(wù)調(diào)度如何實現(xiàn)添加、取消與重置詳解
任務(wù)調(diào)度是我們?nèi)粘i_發(fā)中經(jīng)常會碰到的,下面這篇文章主要給大家介紹了關(guān)于Spring內(nèi)置任務(wù)調(diào)度如何實現(xiàn)添加、取消與重置的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10Mybatis-Plus中and()和or()的使用與原理詳解
最近發(fā)現(xiàn)MyBatisPlus還是挺好用的,下面這篇文章主要給大家介紹了關(guān)于Mybatis-Plus中and()和or()的使用與原理的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-09-09