Java acceder a un Arraylist compararlo con un parámetro de cadena?

onesnapthanos:

Estoy trabajando en un simulador de ticket de aparcamiento y yo estoy tratando de escribir un método que utiliza la placa del carnet de conducir como un parámetro que busca en la colección de officerslist y devuelve el número de billetes emitidos para un coche específico. Tengo estas clases

public class ParkedCar {


private String ownerName;
private String carMake;
private String licensePlateNumber;
private int modelYear;
private int numberOfMinutesParked;

public class ParkingTicket {
    private String officerName;
    private String officerBadgeNumber;
    private String ticketNumber;
    private String carLicensePlateNumber;
    private double fineAmountInCAD;

public class PoliceOfficer
{ 

    private String officerName;
    private String officerBadgeNumber;
    private ArrayList<ParkingTicket> ticketList;

import java.util.ArrayList;
import java.util.Iterator;
public class PoliceDepartment
{ 

    private String address;
    private ArrayList<PoliceOfficer> officerList;

mi método se parece a esto en el momento

public int totalParkingTicketCountOfACar

int totalCount = 0;
    int totalCount = 0;
        ArrayList<PoliceOfficer> carTickets = new ArrayList<PoliceOfficer>();

    Iterator<PoliceOfficer> it = carTickets.iterator();

     while(it.hasNext()){

            PoliceOfficer carticket = it.next();


         if(officerList.equalsIgnoreCase(licensePlateNumber)){
             totalCount++;
            }
        }

          return totalCount;

No estoy seguro de cómo hacer para tener los todos los oficiales de la lista y compararla con la placa de matrícula para obtener el número de billetes emitidos para un coche específico? Cualquier ayuda es muy apreciada ! :)

Abra:

Cada uno PoliceDepartmenttiene una lista de PoliceOfficer.
Cada uno PoliceOfficertiene una lista de ParkingTicket.
Cada uno ParkingTicketes para uno ParkedCar.

Usted quiere iterar a través de todos los PoliceOfficer's. Para cada uno desea iterar a través de sus ParkingTicket's. Para cada ParkingTicketcuyas carLicensePlateNumbercoincida con su parámetro, que desea incrementar el total acumulado.

public int getTotalCarTickets(String license) {
    int total = 0;
    PoliceDepartment pd = // However you obtain it.
    for (PoliceOfficer po : pd.getOfficerList()) {
        for (ParkingTicket ticket : po.getTicketList()) {
            if (ticket.getCarLicensePlateNumber().equals(license)) {
                total++;
            }
        }
    }
    return total;
}

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=404390&siteId=1
Recomendado
Clasificación