Я кодирую, чтобы заставить работать симулятор парковочных талонов. У меня много классов, уместными являются класс ParkedCar, класс ParkingTicket и класс PoliceOfficer. Теперь я написал метод, в котором я беру переменную licensePlateNumber из ParkedCar в качестве параметра, и мне нужно получить счетчик ParkingTicket для автомобиля. Я получаю ошибку в тестовом классе, который у меня есть ниже, из-за этого он не скомпилируется. Метод следующий:
Класс PoliceOfficer
public int getParkingTicketsCountForACar(ParkedCar licensePlateNumber){
int numberOfTickets = 0;
String carPlateNumber = licensePlateNumber.getLicensePlateNumber();
for(ParkingTicket ticket: ticketList){
if(carPlateNumber.equalsIgnoreCase(ticket.getCarLicensePlateNumber())){
numberOfTickets++
}
return numberOfTickets;
}
Тестовый класс
public void testGetParkingTicketsCountForACar() {
PoliceOfficer p = new PoliceOfficer("Adam White","RCMP5225");
ParkedCar car = new ParkedCar("Bob Smith", "Porsche", 2015, "1A2B3C", 65);
ParkingMeter meter = new ParkingMeter("Burnaby",false,10.5,60);
p.issueParkingTicket(car, meter);
ParkedCar car2 = new ParkedCar("Scott Marks", "Ford", 2010, "MYCAR", 30);
meter.setNumberOfPurchasedMinutes(1);
p.issueParkingTicket(car2, meter);
car.setNumberOfMinutesParked(125);
meter.setNumberOfPurchasedMinutes(20);
p.issueParkingTicket(car, meter);
assertEquals(2,p.getParkingTicketsCountForACar("1a2B3c"));
В самом конце я получаю сообщение об ошибке "1a2b3 c", говоря java .lang.String не может быть преобразовано в ParkedCar. Есть ли способ исправить это без использования метода переопределения строк?