Skip to content
Snippets Groups Projects
Commit 24d83fc8 authored by ljenck's avatar ljenck
Browse files

"4 commit"

parent 3964adf3
No related branches found
No related tags found
No related merge requests found
package fi.utu.tech.ooj.exercise0; package fi.utu.tech.ooj.exercise0;
import java.io.PrintStream; import java.io.PrintStream;
import java.util.ArrayList; import java.util.*;
import java.util.Scanner;
public class KirjaKokoelma { public class KirjaKokoelma {
private String kokoelmanOmistaja; private String kokoelmanOmistaja;
...@@ -33,10 +32,32 @@ public class KirjaKokoelma { ...@@ -33,10 +32,32 @@ public class KirjaKokoelma {
out.println("Kokoelma on tyhjä."); out.println("Kokoelma on tyhjä.");
} else { } else {
for (Kirja kirja : getKirjaListaus()) { for (Kirja kirja : getKirjaListaus()) {
out.append(kirja.toString()); out.append(kirja.toString() + "\n");
} }
} }
} }
public List<Kirja> etsiKirjat(String hakusana, KirjanTiedot kentta) throws IllegalArgumentException {
if (hakusana == null || hakusana.isEmpty() || kentta == null) {
throw new IllegalArgumentException("Kentän nimi virheellinen!");
}
ArrayList<Kirja> lista = getKirjaListaus();
ArrayList<Kirja> loydetytKirjat = new ArrayList<>();
for (Kirja kirja : lista) {
String vertailtavaArvo = switch (kentta) {
case NIMI -> kirja.getKirjanNimi();
case KIRJAILIJA -> kirja.getKirjailijanNimi();
case JULKAISUVUOSI -> String.valueOf(kirja.getJulkaisuVuosi());
};
if (vertailtavaArvo.toLowerCase().indexOf(hakusana.toLowerCase()) != -1) {
loydetytKirjat.add(kirja);
}
} }
return loydetytKirjat;
}
}
...@@ -38,6 +38,7 @@ public class Main { ...@@ -38,6 +38,7 @@ public class Main {
System.out.println("*** Harjoitustyöpohja käynnistyy ***"); System.out.println("*** Harjoitustyöpohja käynnistyy ***");
KirjaKokoelma kokoelma = luoKokoelma("/end"); KirjaKokoelma kokoelma = luoKokoelma("/end");
kokoelma.tulostaKokoelma(System.out); kokoelma.tulostaKokoelma(System.out);
System.out.println(kokoelma.etsiKirjat(null, KirjanTiedot.JULKAISUVUOSI));
//Luo ensin uusi KirjaKokoelma olio, Käytä tehtävän 5 rutiinia //Luo ensin uusi KirjaKokoelma olio, Käytä tehtävän 5 rutiinia
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment