import java.util.ArrayList; import java.util.HashMap; import java.util.Scanner; import java.io.File; import java.io.FileNotFoundException; public class LesFil { public static void main(String[] args) { File filen = new File("elektronikk.txt"); Scanner fil = null; // Fanger og håndterer unntaket med en try-catch-blokk. try { fil = new Scanner(filen); } catch (FileNotFoundException exception) { System.out.println("Fant ikke filen."); // Avslutter programmet med exit-koden -1, 0 betyr at alt gikk bra, alt annet betyr at ting gikk feil System.exit(-1); } String linje; // Her viser jeg HashMaps og ArrayLister fungerer, ved å legge til varer i begge samlingene HashMap beholdning = new HashMap<>(); ArrayList liste = new ArrayList<>(); while (fil.hasNextLine()) { linje = fil.nextLine(); String[] biter = linje.split(" "); String navn = biter[0]; int pris = Integer.parseInt(biter[1]); ElektronikkVare vare = new ElektronikkVare(navn, pris); beholdning.put(navn, vare); liste.add(vare); } // Metode som legger noe i HashMap-en, så lengde det ikke eksisterer fra før beholdning.putIfAbsent("tv", new ElektronikkVare("tv", 100)); liste.add(new ElektronikkVare("tv", 20000)); // .keySet() gir meg en liste over nøklene i HashMap-en for (String navn : beholdning.keySet()) { beholdning.get(navn).skrivUt(); } System.out.println(); // For-each løkke gjennom en ArrayList for (ElektronikkVare vare : liste) { System.out.println(vare.hentNavn()); } fil.close(); } }