Skip to content
Snippets Groups Projects
Commit 7f80f608 authored by Koivisto Ida Maria Hannuntytär's avatar Koivisto Ida Maria Hannuntytär
Browse files

rallit toimii rekisterin kautta

parent ca89b6fd
No related branches found
No related tags found
No related merge requests found
......@@ -12,7 +12,7 @@ import java.util.List;
*/
public class Rallit {
private Collection<Ralli> alkiot = new ArrayList<Ralli>();
private final Collection<Ralli> alkiot = new ArrayList<Ralli>();
int lkm = 0;
......@@ -25,12 +25,15 @@ public class Rallit {
/**
* Haetaan kaikki henkilön osallistumat rallit
* Haetaan kaikki henkilön osallistumat rallit.
* Käy rallit läpi ja etsii sieltä ne,
* mihin kysytty henkilö on osallistunut
* @param tunnusNro rallin tunnusnumero
* @return lista ralleista johon haluttu henkilö on osallistunut
*/
public List<Ralli> annaRallit(int tunnusNro) {
List<Ralli> loydetyt = new ArrayList<Ralli>();
// Käy rallit läpi ja etsii sieltä ne, mihin kysytty henkilö on osallistunut
for (Ralli ralli:alkiot) //ITERAATTORI
if(ralli.getTunnusNro() == tunnusNro) loydetyt.add(ralli);
return loydetyt;
......@@ -75,7 +78,7 @@ public class Rallit {
List<Ralli> rallit2 = rallit.annaRallit(2);
// Tulostaa halutun (yläällä indeksi) rallin luoduista
// Käy listan läpi ja tulostaa halutun (yläällä indeksi) rallin luoduista
for (Ralli ral : rallit2) {
System.out.print(ral.getTunnusNro() + " ");
ral.tulosta(System.out);
......
package RalliJava;
import java.util.List;
/**
* @author idamk
* @version 25.2.2025
......@@ -8,7 +10,7 @@ package RalliJava;
public class Rekisteri {
private final Henkilot henkilot = new Henkilot();
//TODO: pitää pohjustaa rallit samalla tavalla
private final Rallit rallit = new Rallit();
/**
......@@ -28,7 +30,14 @@ public class Rekisteri {
henkilot.lisaa(henkilo);
}
//TODO: lisää ralli
/**
* @param ralli lisättävä ralli
*/
public void lisaa (Ralli ralli) {
rallit.lisaa(ralli);
}
/**
......@@ -39,7 +48,13 @@ public class Rekisteri {
return henkilot.anna(i);
}
//TODO: palauta lista kaikista ralleista, johon henkilö on osallistunut
/**
* @param henkilo Henkilö kenen rallit halutaan tietää
* @return listan näistä ralleista
*/
public List<Ralli> annaRallit(Henkilo henkilo){
return rallit.annaRallit(henkilo.getTunnusNro());
}
/**
......@@ -54,23 +69,6 @@ public class Rekisteri {
Henkilo asunmaa = new Henkilo();
Henkilo elfyn = new Henkilo();
/*Ralli pohjanmaa = new Ralli();
Ralli kuopio = new Ralli();
Ralli secto = new Ralli();
pohjanmaa.rekisteroi();
pohjanmaa.vastaaRalli(0);
kuopio.rekisteroi();
kuopio.vastaaRalli(1);
secto.rekisteroi();
secto.vastaaRalli(1);
rekisteri.lisaa(pohjanmaa);
rekisteri.lisaa(kuopio);
rekisteri.lisaa(secto);
pohjanmaa.tulosta(System.out);
kuopio.tulosta(System.out);
secto.tulosta(System.out); */
rovis.rekisteroi();
rovis.vastaahlo();
asunmaa.rekisteroi();
......@@ -81,23 +79,57 @@ public class Rekisteri {
rekisteri.lisaa(rovis);
rekisteri.lisaa(asunmaa);
rekisteri.lisaa(elfyn);
Rallit rallit = new Rallit();
Ralli pohjanmaa = new Ralli();
Ralli kuopio = new Ralli();
Ralli secto = new Ralli();
pohjanmaa.rekisteroi();
pohjanmaa.vastaaRalli(asunmaa.getTunnusNro());
kuopio.rekisteroi();
kuopio.vastaaRalli(rovis.getTunnusNro());
secto.rekisteroi();
secto.vastaaRalli(asunmaa.getTunnusNro());
rallit.lisaa(pohjanmaa);
rallit.lisaa(kuopio);
rallit.lisaa(secto);
pohjanmaa.tulosta(System.out);
kuopio.tulosta(System.out);
secto.tulosta(System.out);
System.out.println("=================== Testiä =====================");
//Tulostetaan henkilön tiedot
for (int i=0; i<rekisteri.getHenkiloita(); i++) {
Henkilo henkilo = rekisteri.annaHenkilo(i);
System.out.println("Henkilö paikassa: " + i);
henkilo.tulosta(System.out);
List<Ralli> rallit2 = rallit.annaRallit(2);
// Käy listan läpi ja tulostaa halutun (yläällä indeksi) rallin luoduista
for (Ralli ral : rallit2) {
System.out.print(ral.getTunnusNro() + " ");
ral.tulosta(System.out); }}
int lkm = rekisteri.getHenkiloita();
System.out.println("Henkilöitä on nyt " + lkm + "!");
} catch (SailoException e) {
System.err.println("Liikaa alkioita :("); //kun alkioita enemmän kun MAX sallii
}
for (int i=0; i<rekisteri.getHenkiloita(); i++) {
Henkilo henkilo = rekisteri.annaHenkilo(i);
//Ralli ralli = rekisteri.annaRallit(henkilo);
//TODO: käytä rallilistaa
// tulosta iteraation avulla tietyn henkilön rallit
henkilo.tulosta(System.out);
}
int lkm = rekisteri.getHenkiloita();
System.out.println("Henkilöitä on nyt " + lkm + "!");
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment