7 svar
120 visningar
sandradenandra 12
Postad: 14 jan 2020

Felmeddelande vid skapandet av List<MinKlass>

Hej!

 

Jag ska skapa en filmdatabas och har då en klass Movie där jag har alla mina filmer. I klassen MovieList vill jag skapa en .txt-fil där dessa ska hamna, och användaren ska sedan kunna lägga till egna filmer, söka i databasen efter filmer osv.

 

Dock får jag ett felmeddelande när jag vill skapa min List<Movie>. Felmeddelandet blir på den röda raden, och det lyder:

"incompatible types: List<String> cannot be converted to List<Movie>"

 

Jag har inte skapat någon List<String> som har med den delen att göra, movieNames och rating har inget med den metoden att göra. Vet ni varför felmeddelandet kommer, och hur kan jag lösa det?

 

Tacksam för hjälp!

Tegelhus 178
Postad: 14 jan 2020 Redigerad: 14 jan 2020

Det metoden Files.readAllLines() gör är att den läser in en lista av teckensträngar, där varje sträng i listan motsvarar en rad i filen du läser in. Din variabel initialMovies är dock av typen List<Movie>, dvs en lista av datatypen Movie. Eftersom String och Movie är helt olika klasser resulterar det i ett felmeddelande.

En alternativ lösning vore att först läsa in alla rader som teckensträngar, och sedan loopa igenom dem och skapa ett Movie-objekt från var och en av teckensträngarna i taget.

Lindehaven 494 – Leg. Lärare
Postad: 14 jan 2020 Redigerad: 14 jan 2020

Metoden readAllLines returnerar en List <String> men du försöker spara det som en List <Movie>. Java kan inte konvertera från List <Movie> till List <String> så du behöver skriva koden för det.

Edit: Och Tegelhus skrev det strax före mig :-)

sandradenandra 12
Postad: 14 jan 2020

Okej, tack för hjälpen!

Men 1. Hur gör jag det? och 2. Movie är en klass där jag har olika instansvariabler för varje film (inklusive getters & setters för respektive instansvariabel), och det är alla dessa som jag vill få in i min .txt-fil. Hur ska jag lägga upp koden för att isåfall kunna läsa in alla instansvariabler och loopa dessa? 

Tacksam för svar! :)

Tegelhus 178
Postad: 14 jan 2020
sandradenandra skrev:

Okej, tack för hjälpen!

Men 1. Hur gör jag det? och 2. Movie är en klass där jag har olika instansvariabler för varje film (inklusive getters & setters för respektive instansvariabel), och det är alla dessa som jag vill få in i min .txt-fil. Hur ska jag lägga upp koden för att isåfall kunna läsa in alla instansvariabler och loopa dessa? 

Tacksam för svar! :)

Ah, försöker du skriva till filen? Antog att du försökte läsa från den.  Skulle du kunna förklara lite mer exakt vad du vill göra, vilken information du vill spara och varför?

sandradenandra 12
Postad: 14 jan 2020
Tegelhus skrev:
sandradenandra skrev:

Okej, tack för hjälpen!

Men 1. Hur gör jag det? och 2. Movie är en klass där jag har olika instansvariabler för varje film (inklusive getters & setters för respektive instansvariabel), och det är alla dessa som jag vill få in i min .txt-fil. Hur ska jag lägga upp koden för att isåfall kunna läsa in alla instansvariabler och loopa dessa? 

Tacksam för svar! :)

Ah, försöker du skriva till filen? Antog att du försökte läsa från den.  Skulle du kunna förklara lite mer exakt vad du vill göra, vilken information du vill spara och varför?

Ja, alltså det jag vill göra är att skapa en filmdatabas som användaren ska kunna söka efter filmer i (både efter titel och efter rating) samt lägga till egna filmer med titel och rating. Jag har för tillfället fyra klasser, lab5 som startar programmet, MovieDatabaseUI som innehåller själva uppbyggnaden av programmet med de val man kan göra (ex. söka titel, lägga till film, avbryta), Movie där jag har instansvariabler för respektive 5 befintliga filmer som finns i databasen (med getters & setters), och MovieList som jag vill ska skapa en .txt-fil och hämta in filmerna från Movie, så att användaren kan läsa från .txt-filen när den vill söka, men så ska användaren kunna lägga till i .txt-filen också.

Var det det du behövde? Eller ska jag förklara någon del ytterligare? Jättetacksam för hjälpen!

Du kanske ska titta närmare på serialization och de-serialization vilket kan underlätta filhanteringen av objekt betydligt.

sandradenandra, hur gick det?

Svara Avbryt
Close