Advertisement
Guest User

Cage

a guest
Feb 19th, 2020
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. package rabbits;
  2.  
  3. import org.w3c.dom.ls.LSOutput;
  4.  
  5. import java.util.ArrayList;
  6. import java.util.LinkedList;
  7. import java.util.List;
  8. import java.util.Scanner;
  9.  
  10. public class Cage {
  11. private String name;
  12. private int capacity;
  13. private List<Rabbit> data;
  14.  
  15. Cage(String name, int capacity) {
  16. this.name = name;
  17. this.capacity = capacity;
  18. this.data = new ArrayList<>();
  19. }
  20.  
  21. public String getName() {
  22. return name;
  23. }
  24.  
  25. public int getCapacity() {
  26. return capacity;
  27. }
  28.  
  29.  
  30. public boolean removeRabbit(String name) {
  31. for (int i = 0; i < data.size(); i++) {
  32. if (data.get(i).getName().equals(name)) {
  33. data.remove(i);
  34. return true;
  35. }
  36. }
  37. return false;
  38. }
  39.  
  40. public void removeSpecies(String species) {
  41. for (int i = 0; i < data.size(); i++) {
  42. if (data.get(i).getSpecies().equals(species)) {
  43. data.remove(data.get(i--));
  44. }
  45. }
  46. }
  47.  
  48. public Rabbit sellRabbit(String name) {
  49. for (int i = 0; i < data.size(); i++) {
  50. if (data.get(i).getName().equals(name)) {
  51. data.get(i).setAvailable();
  52. return data.get(i);
  53. }
  54. }
  55. return new Rabbit("kurec", "golem");
  56. }
  57.  
  58. public List<Rabbit> sellRabbitBySpecies(String species) {
  59. List<Rabbit> sold = new ArrayList<>();
  60. for (int i = 0; i < data.size(); i++) {
  61. if (data.get(i).getSpecies().equals(species)) {
  62. sellRabbit(data.get(i).getName());
  63. sold.add(data.get(i));
  64. }
  65. }
  66. return sold;
  67. }
  68.  
  69. public int count() {
  70. return data.size();
  71. }
  72.  
  73. public String report() {
  74. StringBuilder out = new StringBuilder(String.format("Rabbits available at %s:%n", getName()));
  75. for (int i = 0; i < data.size(); i++) {
  76. if (data.get(i).isAvailable()) {
  77. out.append(data.get(i));
  78. out.append(System.lineSeparator());
  79. }
  80. }
  81. return out.toString().trim();
  82. }
  83.  
  84.  
  85. public void add(Rabbit rabbit) {
  86. if (data.size() < capacity) {
  87. data.add(rabbit);
  88. }
  89. }
  90.  
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement