2016-04-07 31 views
-4

我目前正在處理一個任務,它要求我修改以前的方法。我現在的方法是:將類添加到ArrayList集合

public ParkingTicket issueParkingTicket(ParkedCar car,ParkingMeter meter){ 
    if(isParkingTimeExpired(car,meter) == true){ 
     ParkingTicket ticket = new ParkingTicket(getOfficerName(),getBadgeNumber(),car.getLicenseNumber(),car.getCarMake(),car.getCarModel(),calculateFine(car, meter)); 
     ticket.displayTicketDetails(); 
     return ticket; 
    } 
    return null; 
} 

集合是停車罰單的集合(這也是一類「公共類ParkingTicket)我寫了上面的方法駐留在不同的類(公共類ParkingOfficer)

這個方法會創建一個對象,另外我想這個方法創建這個對象並把它作爲一個ArrayList添加到集合中,我該怎麼做呢?

+1

什麼是「_the_ collection」?我在代碼中沒有看到任何集合。 –

+0

道歉信息無效,收集是一個停車票的集合(這也是一類「公共類ParkingTicket)。我上面寫的方法駐留在不同的類(公共類ParkingOfficer) –

+0

'ArrayList tickets =新ArrayList ();'然後'tickets.add('ticket here')' – Laurel

回答

0

在你的其他類中,像這樣做:

ParkingTicket blah; 
ParkingTicket foo; 
ParkingTicket bar; 

ArrayList<ParkingTicket> allDaTickets = new ArrayList<>(); 
allDaTickets.add(blah); 
allDaTickets.add(foo); 
allDaTickets.add(bar); 
0

要創建某個類的ArrayList,可以:例如使用類「Fruit」並調用「fruits」列表。

List<Fruit> fruits = new ArrayList<>(); 

//to add an instance, to the above list, you use the add method 
fruits.add(instance); 

在你的情況下,創造ParkingTickets的名單,這將是:

List<ParkingTicket> tickets = new ArrayList<>(); 
tickets.add(ticket); //ticket being an instance of ParkingTicket ofcourse 

話雖這麼說,你的代碼需要一些重構。您若條件不應該是:

if(isParkingTimeExpired(car,meter) == true) 

我假設isParkingTimeExpired(汽車,儀表)方法已返回一個布爾值,所以沒有必要在你的病情檢查「==真」的一部分。 它會變成這樣。

if(isParkingTimeExpired(car,meter)) { .... } 

如果該方法返回true,則執行if語句塊。