07.Grooming Salon - Objects and Classes - Exercise - 90/100
Здравейте, нуждая се от помощ за откриването на грешка, заради която на тест 3 дава грешен отговор.
Прилагам кода за класа GroomingSalon:
package groomingSalon;
import java.util.ArrayList;
public class GroomingSalon {
ArrayList<Pet> data;
int capacity;
public GroomingSalon(int capacity) {
this.data = new ArrayList<>();
this.capacity = capacity;
}
public void add(Pet pet) {
if (this.data.size() < capacity) this.data.add(pet);
}
public boolean remove(String name) {
for (Pet pet : this.data) {
if (pet.getName().equals(name)) return data.remove(pet);
}
return false;
}
public Pet getPet(String name, String owner) {
for (Pet pet : this.data) {
if (pet.getName().equals(name) && pet.getOwner().equals(owner)) return pet;
}
return null;
}
public int getCount() {
return this.data.size();
}
public String getStatistics() {
StringBuilder statistics = new StringBuilder("The grooming salon has the following clients:\n");
for (Pet pet : this.data) {
statistics.append(pet.getName()).append(" ").append(pet.getOwner()).append("\n");
}
return statistics.toString();
}
}
Както и този за класа Pet, чиито обекти ще се съдържат в листа data от GroomingSalon:
package groomingSalon;
public class Pet {
String name;
int age;
String owner;
public Pet(String name, int age, String owner) {
setName(name);
setAge(age);
setOwner(owner);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getOwner() {
return owner;
}
public void setOwner(String owner) {
this.owner = owner;
}
@Override
public String toString() {
return getName() + " " + getAge() + " - " + getOwner();
}
}
По условие в main няма нищо, затова не го прилагам.
Тествах всички методи, по всякакъв начин, за който се сетих и всичко работи коректно. Явно нещо ми убягва.