Advertisement
trongdatvu

Bai3

Aug 23rd, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.25 KB | None | 0 0
  1. import java.util.*;
  2. import java.io.*;
  3.  
  4. interface In {
  5. public void print();
  6. }
  7.  
  8. class Book implements In {
  9. private String id;
  10. private String tenSach;
  11. private String tacGia;
  12.  
  13. public Book(String id, String tenSach, String tacGia) {
  14. this.id = id;
  15. this.tenSach = tenSach;
  16. this.tacGia = tacGia;
  17. }
  18.  
  19. public void setID(String id) { this.id = id; }
  20. public void setTenSach(String tenSach) { this.tenSach = tenSach; }
  21. public void setTacGia(String tacGia) { this.tacGia = tacGia; }
  22.  
  23. public String getID() { return id; }
  24. public String getTenSach() { return tenSach; }
  25. public String getTacGia() { return tacGia; }
  26.  
  27. @Override
  28. public void print() {
  29. System.out.println("ID: " + id);
  30. System.out.println("tenSach: " + tenSach);
  31. System.out.println("tacGia: " + tacGia);
  32. }
  33. }
  34.  
  35. class sxTenSach implements Comparator<Book> {
  36. @Override
  37. public int compare(Book a, Book b) {
  38. return a.getTenSach().compareTo(b.getTenSach());
  39. }
  40. }
  41.  
  42. class ThuVien implements In {
  43. LinkedList<Book> ThuVien;
  44. int soSach;
  45.  
  46. public ThuVien() {
  47. ThuVien = new LinkedList<Book>();
  48. soSach = ThuVien.size();
  49. }
  50.  
  51. public void add(Book book) {
  52. ThuVien.add(book);
  53. soSach = ThuVien.size();
  54. }
  55.  
  56. public Book get(int index) {
  57. return ThuVien.get(index);
  58. }
  59.  
  60. public void sxTenSach() {
  61. Collections.sort(ThuVien, new sxTenSach());
  62. }
  63.  
  64. public int findID(String id) {
  65. int index = -1;
  66.  
  67. for (int i = 0; i < ThuVien.size(); ++i) {
  68. if (ThuVien.get(i).getID().equals(id)) {
  69. index = i;
  70. break;
  71. }
  72. }
  73.  
  74. return index;
  75. }
  76.  
  77. public void findTenSach(String tenSach) {
  78. boolean found = false;
  79.  
  80. for (Book book : ThuVien) {
  81. if (book.getTenSach().equals(tenSach)) {
  82. System.out.println("Tim thay " + tenSach);
  83. book.print();
  84.  
  85. found = true;
  86. break;
  87. }
  88. }
  89.  
  90. if (!found) {
  91. System.out.println("Khong tim thay" + tenSach);
  92. }
  93. }
  94.  
  95. public void delete(String id) {
  96. for (int i = 0; i < ThuVien.size(); ++i) {
  97. if (ThuVien.get(i).getID().equals(id)) {
  98. ThuVien.remove(i);
  99. break;
  100. }
  101. }
  102. }
  103.  
  104. @Override
  105. public void print() {
  106. for (Book book : ThuVien) {
  107. book.print();
  108. System.out.println();
  109. }
  110. }
  111. }
  112.  
  113. class Main {
  114. final static Scanner scan = new Scanner(System.in);
  115.  
  116. public static void printMenu() {
  117. System.out.println();
  118. System.out.println("~~~~~~~~~~~~~~~~~~~~");
  119. System.out.println("1. Nhap sach");
  120. System.out.println("2. Sap xep bang ten sach");
  121. System.out.println("3. Tim ten sach");
  122. System.out.println("4. Xoa sach bang ID");
  123. System.out.println("5. Sua doi thong tin sach");
  124. System.out.println("0. Exit.");
  125. System.out.print("Nhap lua chon: ");
  126. }
  127.  
  128. public static void main(String[] args) {
  129. ThuVien ThuVien = new ThuVien();
  130.  
  131. boolean exit = false;
  132.  
  133. do {
  134. printMenu();
  135. int choice = scan.nextInt();
  136. scan.nextLine();
  137. System.out.println();
  138.  
  139. if (choice == 1) {
  140. System.out.print("Nhap ID: ");
  141. String id = scan.nextLine();
  142. System.out.print("Nhap ten sach: ");
  143. String tenSach = scan.nextLine();
  144. System.out.print("Nhap ten tac gia: ");
  145. String tacGia = scan.nextLine();
  146.  
  147. ThuVien.add(new Book(id, tenSach, tacGia));
  148.  
  149. } else if (choice == 2) {
  150. ThuVien.sxTenSach();
  151. System.out.println("Done.");
  152. } else if (choice == 3) {
  153. System.out.print("Nhap ten sach muon tim: ");
  154. String tenSach = scan.nextLine();
  155.  
  156. ThuVien.findTenSach(tenSach);
  157.  
  158. System.out.println("Done.");
  159. } else if (choice == 4) {
  160. System.out.print("Nhap ID cua sach muon xoa: ");
  161. String id = scan.nextLine();
  162.  
  163. ThuVien.delete(id);
  164.  
  165. System.out.println("Done.");
  166. } else if (choice == 5) {
  167. System.out.print("Nhap ID cua sach muon doi thonng tin: ");
  168. String id = scan.nextLine();
  169. int index = ThuVien.findID(id);
  170.  
  171. System.out.print("Nhap lai ten sach: ");
  172. String tenSach = scan.nextLine();
  173. System.out.print("Nhap lai ten tac gia: ");
  174. String tacGia = scan.nextLine();
  175.  
  176. ThuVien.get(index).setTenSach(tenSach);
  177. ThuVien.get(index).setTacGia(tacGia);
  178.  
  179. System.out.println("Done.");
  180. } else if (choice == 0) {
  181. exit = true;
  182. } else {
  183. System.out.println("Try again.");
  184. }
  185.  
  186. System.out.println();
  187. } while (!exit);
  188.  
  189. scan.close();
  190. }
  191. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement