diff --git a/src/td05/Calculatrice.java b/src/td05/Calculatrice.java index e5bfd6346bc719d015c03554b775a6b4914a6290..48e3aedcd890e60296ebe54868b1586c6f8a7ada 100644 --- a/src/td05/Calculatrice.java +++ b/src/td05/Calculatrice.java @@ -1,6 +1,5 @@ package td05; -import java.util.ArrayList; import java.util.Scanner; public class Calculatrice diff --git a/src/tp05/Book.java b/src/tp05/Book.java new file mode 100644 index 0000000000000000000000000000000000000000..64f6e273753c03dc3afb7b053acace0e95f58681 --- /dev/null +++ b/src/tp05/Book.java @@ -0,0 +1,91 @@ +package tp05; + +public class Book +{ + private String code; + private final String title; + private final String author; + private final int publicationYear; + private int user; // 0 = default + + public Book(String c, String t, String a, int p, int u) + { + this.code = c; + this.title = t; + this.author = a; + this.publicationYear = p; + this.user = u; + } + + public String getCode() + { + return code; + } + + public String getTitle() + { + return title; + } + + public String getAuthor() + { + return author; + } + + public int getPubliYear() + { + return publicationYear; + } + + public int getUser() + { + return user; + } + + public boolean borrow(int borrower) + { + this.user = borrower; + if(this.getUser() != 0) + { + return true; + } + return false; + } + + public boolean giveBack() + { + if(this.isAvailable()) + { + return false; + } + else + { + this.user = 0; + return true; + } + } + + public boolean equals(Book obj) + { + if(this == obj) { return true; } + if(this.getCode().equals(obj.getCode())) { return true; } + if((this.getAuthor().equals(obj.getAuthor())) && (this.getTitle().equals(obj.getTitle()))) { return true; } + if(this == null || obj == null) { return false; } + return false; + } + + public boolean isAvailable() + { + if(this.getUser() == 0) + { + return true; + } + return false; + } + + @Override + public String toString() + { + return "Code : "+getCode()+" | Nom : "+getTitle()+" | Auteur : "+getAuthor()+" | Publication : "+getPubliYear()+'\n'; + } +} \ No newline at end of file diff --git a/src/tp05/Library.java b/src/tp05/Library.java new file mode 100644 index 0000000000000000000000000000000000000000..bb072f494472a07252b2cfc9a375cce0179d67b1 --- /dev/null +++ b/src/tp05/Library.java @@ -0,0 +1,92 @@ +package tp05; + +import java.util.ArrayList; + +public class Library +{ + private ArrayList<Book> books = new ArrayList<>(); + + public Book getBook(String code) + { + for(int i = 0; i <= books.size() - 1; i++) + { + if(code.equals(books.get(i).getCode())) + { + return books.get(i); + } + } + return null; + } + + public boolean addBook(Book b) + { + return books.add(b); + } + + public boolean removeBook(String aCode) + { + for(int i = 0; i <= books.size() - 1; i++) + { + if(aCode.equals(books.get(i).getCode())) + { + return books.remove(i) != null; + } + } + return false; + } + + public boolean removeBook(Book b) + { + return books.remove(b); + } + + public String borrowings() + { + String str = ""; + for(int i = 0; i <= books.size() - 1; i++) + { + if(books.get(i).getUser() == 0) + { + str=str+books.get(i); + } + } + return str; + } + + public boolean borrow(String code, int borrower) + { + for(int i = 0; i <= books.size() - 1; i++) + { + if(code.equals(books.get(i).getCode())) + { + return books.get(i).borrow(borrower); + } + } + return false; + } + + public boolean giveBack(String code) + { + for(int i = 0; i <= books.size() - 1; i++) + { + if(code.equals(books.get(i).getCode())) + { + return books.get(i).giveBack(); + } + } + return false; + } + + @Override + public String toString() + { + String str = ""; + + for(int i = 0; i <= books.size() - 1; i++) + { + Book b = books.get(i); + str=str+"Code : "+b.getCode()+" | Nom : "+b.getTitle()+" | Auteur : "+b.getAuthor()+" | Publication : "+b.getPubliYear()+'\n'; + } + return str; + } +} \ No newline at end of file diff --git a/src/tp05/Main.java b/src/tp05/Main.java deleted file mode 100644 index afa2addee5e42e2d98066f702bdfbd7022bf7651..0000000000000000000000000000000000000000 --- a/src/tp05/Main.java +++ /dev/null @@ -1,8 +0,0 @@ -package tp05; - -public class Main { - public static void main(String[] args) { - System.out.println("Ok"); - System.out.println("Oui"); - } -} diff --git a/src/tp05/UseLibrary.java b/src/tp05/UseLibrary.java new file mode 100644 index 0000000000000000000000000000000000000000..9556d37d69c717bf7ae031e8cfb063363ad261e0 --- /dev/null +++ b/src/tp05/UseLibrary.java @@ -0,0 +1,15 @@ +package tp05; + +public class UseLibrary +{ + public static void main(String[] args) + { + Library lib = new Library(); + lib.addBook(new Book("mc", "Minecaft", "None", 2010, 0)); + lib.addBook(new Book("nes", "Nees 1985", "N", 2000, 0)); + lib.addBook(new Book("fr", "Ma France", "Geaul", 1956, 0)); + + System.out.println(lib.getBook("nes")); + System.out.println(lib); + } +} \ No newline at end of file