Java highscore list
<p>So i have a problem with my final projekt in school. I'm creating a game with a highscore list but i need to have ten people to show up, and i curently only have 5 people and i do not have a single clue how to fix it.  </p>

<pre><code>import java.util.*;
    import java.io.*;

    public class HighscoreManager {
        // Sparar alla poäng i filen "scores.dat", filen skapas här
        private static final String HIGHSCORE_FILE = "scores.dat";

        // En arraylista med typen score
        ArrayList&lt;Score&gt; scores;

        // Startar en in och en utström för att skicka och ladda in information från
        // filen
        ObjectOutputStream outputStream = null;
        ObjectInputStream inputStream = null;

        public HighscoreManager() {
            // För att kunna arbeta med listan behövs en variabel dvs. Arraylistan
            // scores
            scores = new ArrayList&lt;Score&gt;();
            // Det är med classen Arraylist&lt;score&gt; getScores() som arrayen skapas
            // forts
        }

        public ArrayList&lt;Score&gt; getScores() {
            // ...forts-&gt; och här används loadScoreFil() och sort(), returnerar
            // värdet scores som används i HighscoreManager
            loadScoreFile();
            sort();
            return scores;
        }

        private void sort() {
            // Här blir det komplicerat, kort och gott så skapas "comparator", ifrån
            // ScoreComparator.java, den sorterar scores med hjälp av just
            // collections(från java).sort(x,y)
            ScoreComparator comparator = new ScoreComparator();
            Collections.sort(scores, comparator);
        }

        public void addScore(String name, int score) {

            loadScoreFile();
            scores.add(new Score(name, score));
            updateScoreFile();
        }

        public void loadScoreFile() {
            //Se updateScoreFile
            try {
                inputStream = new ObjectInputStream(new FileInputStream(
                        HIGHSCORE_FILE));
                scores = (ArrayList&lt;Score&gt;) inputStream.readObject();
            } catch (FileNotFoundException e) {
                System.out.println("");
            } catch (IOException e) {
                System.out.println("io problem: " + e.getMessage());
            } catch (ClassNotFoundException e) {
                System.out.println("cnf problem: " + e.getMessage());
            } finally {
                try {
                    if (outputStream != null) {
                        outputStream.flush();
                        outputStream.close();
                    }
                } catch (IOException e) {
                    System.out.println("io problem: " + e.getMessage());
                }
            }
        }

        public void updateScoreFile() {
            try {
                // Med serializerade Score.java så används outputStream för att
                // skicka till HIGHSCORE_FILE som är scores.dat

                outputStream = new ObjectOutputStream(new FileOutputStream(
                        HIGHSCORE_FILE));
                outputStream.writeObject(scores);
            }
            // resten är catch som kan göras om för att visa felmeddelanden, jag
            // gjorde bara en basic.
            catch (FileNotFoundException e) {
                System.out.println("File Not Found, run the program again to fix.");
            } catch (IOException e) {
                System.out.println("IO problem, run the program again to fix.");
            }

            finally {
                try {
                    if (outputStream != null) {
                        outputStream.flush();
                        outputStream.close();
                        // Detta displayar poängen så länge det finns något att
                        // displaya
                    }
                } catch (IOException e) {
                    System.out
                            .println("Update problem, run the program again to fix.");
                }
            }
        }

        public String getHighscoreString() {
            // Här skapas själva texten som ska visas, nästan slutstation för
            // highscoret

            // Skapar Stringen highscoreString och sätter en maxgräns för hur många
            // highscores som ska vara med.
            String highscoreString = "";
            int max = 10;

            // Sammanställer poängen
            ArrayList&lt;Score&gt; scores;
            scores = getScores();

            // while loop som printar ut ett highscore i taget, när i &lt; max så
            // skrivs scores1,scores2 etc ut och plussar
            // på i och processen repeteras tills i = x, då returneras värdet som är
            // highscoreString och kan användas i tamain.
            int i = 0;
            int x = scores.size();
            if (x &gt; max) {
                x = max;
            }

            while (i &lt; x) {
                highscoreString += (i + 1) + ".\t" + scores.get(i).getNamn() + "  "
                        + scores.get(i).getScore() + "\n";
                i++;
            }

            return highscoreString;
        }
    }
</code></pre>