In het project DHL werk je met volgende klassen:
Pakje
: beschrijft een pakje met een zeker gewicht en een zekere bestemming.Sorteermachine
: hier kan je pakjes aan toevoegen. De sorteermachine voert
acties uit op de pakjes in de sorteermachine.In deze oefening programmeren we de klasse Sorteermachine
, een klasse die instanties
van de klasse Pakje
verzamelt in een ArrayList
. Je maakt in BlueJ het
project DHL met volgende klassen:
Pakje
: de code van Pakje
kan je hier1 downloaden.Sorteermachine
: kopieer alvast de boilerplate-code uit de indiensectie op deze
pagina naar jouw project.Alvorens je aan de opgave begint, loont het de moeite om de werking van de klasse Pakje
te bestuderen. In het handboek vind je de API van de klasse Pakje
.
De velden en constructor van de klasse Sorteermachine
krijg je cadeau:
ArrayList<Pakje> pakjes
: een Arraylist
die de pakjes bijhoudt die in de
sorteermachine zitten.double maxAantal
: het maximale aantal pakjes dat je in de sorteermachine
kan steken.SorteerMachine(double)
: initialiseert de ArrayList
pakjes
en geeft de
waarde van de parameter aan het veld maxAantal
.Jouw programmeeropdracht:
void pakjeToevoegen(Pakje)
Voegt een pakje toe aan de Arraylist
pakjes
. Let op, je mag het
maximale aantal pakjes dat de sorteermachine kan bevatten niet overschrijden!
double berekenTotaalGewicht()
Berekent het totale gewicht van alle pakjes in de sorteermachine en geeft dit terug.
int aantalMetBestemming(int)
Berekent hoeveel pakjes in de sorteermachine bestemd zijn voor de postcode die je via
de parameter meegeeft aan deze methode.
boolean pakjeVoorGemeente(int)
Controleert of er een pakje bestemd is voor de gemeente waarvan je de postcode als
parameter meegeeft aan de methode. Indien er minstens één pakje gevonden wordt voor de
betreffende gemeente, dan wordt true
teruggegeven, anders false
.
void verwijderPakje(int)
Verwijdert het pakje met gegeven index uit de Arraylist
pakjes
.
Vandewalle, D.2 (2018). Leren programmeren, een objectgeoriënteerde aanpak, Java in BlueJ3 (2de editie). Acco Uitgeverij4.