import java.util.*; import java.io.*; /** * Liste over Bil-objekter sortert etter pris * * @param filnavn filnavn for å lese inn biler (må være en .csv) */ public class BilListe { ArrayList biler = new ArrayList<>(); // Holder oversikt over hvilken bil som vises int bilNr = 0; BilListe(String filnavn) { lesFraFil(filnavn); } /** * Fyller listen med biler fra fil * * @param filnavn filnavn (må være en .csv) */ public void lesFraFil(String filnavn) { File fil = new File(filnavn); Scanner sc = null; try { sc = new Scanner(fil); } catch (FileNotFoundException e) { e.printStackTrace(); System.exit(1); } while (sc.hasNextLine()) { String[] linje = sc.nextLine().split(","); biler.add(new Bil(linje[0], Integer.parseInt(linje[1]))); } biler.sort(null); sc.close(); } /** * @return første bil i billista */ Bil hentFoersteBil() { return biler.get(0); } /** * @return neste bil i billista */ Bil hentNesteBil() { return biler.get(++bilNr); } /** * @return forrige bil i billista */ Bil hentForrigeBil() { return biler.get(--bilNr); } /** * @return false dersom vi er på starten av lista, true ellers */ boolean harForrige() { return bilNr != 0; } /** * @return false dersom vi er på slutten av lista, true ellers */ boolean harNeste() { return bilNr != biler.size() - 1; } }