import java.io.*; public class SaveAndLoad { private Scoreboard[] scoreboard = new Scoreboard[5]; //constructor public SaveAndLoad(Scoreboard[] scoreboard) { this.scoreboard = scoreboard; } public static void save() throws FileNotFoundException { // 1. Create 5 GameScores // 2. Put 5 GameScores into a gamescore[] // 3. Create a Scoreboard using a gamescore[] //Create 5 instances of the Game Class GameScore player1 = new GameScore("Rebekah", 199); GameScore player2 = new GameScore("Allen", 195); GameScore player3 = new GameScore("Sami", 198); GameScore player4 = new GameScore("Megan", 142); GameScore player5 = new GameScore("Vince", 169); GameScore[] gamescore = new GameScore[5]; gamescore[0] = player1; gamescore[1] = player2; gamescore[2] = player3; gamescore[3] = player4; gamescore[4] = player5; //Create an instance of the Scoreboard Class using the GameScore array Scoreboard scoreboard = new Scoreboard(GameScore[] gamescore);
The last line in this is giving me an error and I’m not sure why because those are the parameters for the Scoreboard class.
Advertisement
Answer
Short answer
Change to:
Scoreboard scoreboard = new Scoreboard(gamescore);
Longer answer
Consider the code:
new GameScore("Vince", 169);
You are not doing the incorrect
new GameScore(String "Vince", int 169);
So as you know, there is no necessity to pass the variable type as well as the value, and in fact doing so is not only unnecessary but wrong.
Tip
To make you code more concise you may consider writing the code as follows, eliminating the unnecessary variable names.
GameScore[] gamescore = new GameScore[5]; gamescore[0] = new GameScore("Rebekah", 199); gamescore[1] = new GameScore("Allen", 195); gamescore[2] = new GameScore("Sami", 198); gamescore[3] = new GameScore("Megan", 142); gamescore[4] = new GameScore("Vince", 169);