Deze opgave is het tweede deel van de Klassement-opgave.
In deze opgave zal je, gespreid over 2 deelopgaves, een programma maken waarin je de punten van ploegen kan bijhouden om zo een winnaar te bepalen. In de vorige opgave heb je een Team
-klasse gemaakt, om een ploeg voor te stellen. Nu is het de bedoeling om een Ranking
-klasse te maken (een klassement).
Maak een Java-klasse Ranking
. Deze klasse stelt een klassement voor en moet minstens volgende constructor en methoden bezitten. Maak zelf de nodige instantievariabelen aan.
De constructor van de Ranking
-klasse moet volgende signatuur hebben:
Ranking(int amountOfTeams, int victoryPoints, int drawPoints);
Argumenten:
Naast bovenstaande methodes, dien je ook nog onderstaande methodes te implementeren.
// Voegt een wedstrijd toe van de ploeg met als naam firstTeam tegen de ploeg
// met als naam secondTeam. Deze wedstijd eindigde in een gelijkspel.
void addDraw(String firstTeam, String secondTeam);
// Voegt een ploeg toe aan het klassement.
void addTeam(Team team);
// Voegt een wedstrijd toe van de ploeg met als naam teamName. Deze ploeg heeft die
// wedstrijd gewonnen.
void addVictory(String teamName);
// Geeft het aantal punten van de ploeg met als naam teamName terug. Als deze
// ploeg niet bestaat moet -1 teruggegeven worden.
int getPoints(String teamName);
// Geeft een array terug bestaande uit alle ploegen met het gegeven aantal punten,
// zie Assumpties en Tips.
Team[] getTeamsWithPoints(int points);
// Geeft een array terug bestaande uit alle ploegen met het hoogste aantal punten.
// Dit is altijd minstens 1 ploeg, maar kunnen er meerdere zijn bij een ex aequo,
// vandaar dat dit een array moet zijn. Zie Assumpties en Tips.
Team[] getWinners();
getTeamsWithPoints()
en getWinners()
-methoden teruggeven hoeft niet begrensd te zijn tot het aantal ploegen dat erin zitten, de array mag dus null
-waarden bevatten. Probeer voor jezelf echter om deze lengte wél te doen kloppen, maar het is niet noodzakelijk om de test te doen slagen.getTeamsWithPoints()
en getWinners()
-methoden is niet belangrijk.Hierbij nog wat uitleg over de Dodona-testen voor deze oefening:
getPoints()
-methode -1 teruggeeft als er geen teams zijn.addTeam()
en getPoints()
-methodes correct werken.addDraw()
methode correct werkt.addVictory()
-methode correct werkt.getTeamsWitPoints()
-methode correct werkt.getWinners()
-methode correct werkt.