import java.io.FileNotFoundException; import java.io.File; import java.util.ArrayList; import java.util.Scanner; public class SerieSystem { private String navn; private SerieType serieType; private ArrayList lagListe = new ArrayList<>(); private PoengPrioLenkeliste prioListe = new PoengPrioLenkeliste(); public SerieSystem(String n, SerieType type, String filnavn) { navn = n; serieType = type; lesFraFil(filnavn); } private void lesFraFil(String filnavn) { try { Scanner fil = new Scanner(new File(filnavn)); // Pre-kondisjon: fila eksisterer // Post-kondisjon: hver linje i fila er lest, og et lag opprettet // og lagt til i lista while (fil.hasNextLine()) { String[] linje = fil.nextLine().split(","); String navn = linje[0]; int aar = Integer.parseInt(linje[1]); int poeng = Integer.parseInt(linje[2]); ErIdrettslag lag; if (serieType == SerieType.FOTBALL) { lag = new Fotballag(navn, aar, poeng); } else { // Hvis ikke FOTBALL, s? er det INNEBANDY lag = new Innebandylag(navn, aar, poeng); } lagListe.add(lag); prioListe.leggTilRekursivt(lag); } fil.close(); } catch (FileNotFoundException e) { System.out.println("Fil ikke funnet"); System.exit(-1); } } public int beregnTotalPoengsum() { int total = 0; // Pre-kondisjon: total = 0 // Post-kondisjon: total er summen av poeng av alle lag i laglisten for (ErIdrettslag lag : lagListe) { total += lag.hentAntallPoeng(); } return total; } public void skrivUt() { // Pre: har en liste over lag // Post: hvert lag har skrevet ut info om seg selv for (ErIdrettslag lag : lagListe) { System.out.println(lag.hentNavn() + " (" + lag.hentAar() + ")" + " - Poeng: " + lag.hentAntallPoeng()); } } public void skrivUtSortert() { prioListe.skrivSortert(); } }