public KasseInterface findVare( String varenummer ) { System.out.println("finder vare for '" + varenummer + "'"); for( KasseInterface elem : varer ) { if (elem.getVarenummer().equals(varenummer) ){ System.out.println("fandt vare '" + elem + "'"); return elem; } System.out.println("fandt ikke nogen vare!!!"); return null; } }
Dine tuborg parenteser ser ikke rigtige ud, jeg har prøvet at sætte dem ind. Hvis du skal sammeligne to strenge, skal du bruge object.equals(). Håber det kan hjælpe!
public KasseInterface findVare( String varenummer ) { System.out.println("finder vare for '" + varenummer + "'"); for( KasseInterface elem : varer ) { if (elem.getVarenummer().equals(varenummer) ){ System.out.println("fandt vare '" + elem + "'"); return elem; } // BLIVER UDSKREVET HVERGANG DER IKKE ER ET MATCH System.out.println("fandt ikke nogen vare!!!"); return null; } }
SKAL DET VÆRE NOGET, MÅ DET VÆRE SÅDAN
public KasseInterface findVare( String varenummer ) { System.out.println("finder vare for '" + varenummer + "'"); for( KasseInterface elem : varer ) { if (elem.getVarenummer().equals(varenummer) ){ System.out.println("fandt vare '" + elem + "'"); return elem; } } System.out.println("fandt ikke nogen vare!!!"); return null; }
Jeg er ikke helt med på dit problem 1. Finder ovenstående det varenr der står i din JList ?? 2. Er det når du skal rette et varenr i din JList det ikke vises ?
Ja, man kan hurtigt komme til at sætte tuborgparenteser forkert, når man ikke lige bruger sin editor. Det er helt rigtigt Carsten, og iøvrigt ville den returnere null i første iteration.
Den metode der virker er den som jeg viste længere oppe i spørgsmålet og den som du selv skriver i dit eksempel.
Jeg havde sat en } forkert og derfor løb den kun løkken igennem en enkelt gang hvad enten om den fandt det korrekte varenummer eller ej.
Mit problem bestod egentlig i begge dele. Jeg ved godt at metoden ikke er optimal, men det er den vi har fået vist på skolen af vores lære. Jeg bruger den til både at søge og rette i min ArrayList og det virker faktisk fint.
Jeg vil gerne smide nogle point til dig for din hjælp i det andet spørgsmål og fordi du altid er flink til at hjælpe mig når jeg løber ind i problemer :o) - Er 50 fint nok og hvordan gør jeg når dette spørgsmål er lukket?
Mht. spørgsmål, så er dette spm. reelt lukket, i og med renerr har lagt et svar som du har accepteret, men det er ingen hindring for at vi kan fortsætte.
Dit problem er altså pt. at din ArrayList bliver rettet korrekt, men dette vises ikke i din JList - ikke sandt ?
Jeg opretter lige et andet spørgsmål hvor du kan svare..
Jeg har nok ikke udtrykt mig tydelig nok, men mit problem bestod i at når jeg ville rette et objekt i min arrayliste indsatte den rettelsen på plads nummer 1 i min jList i stedet for nummer 3 (hvis det var der jeg ville rette).
Jeg har ikke prøvet med repaint(); Hvad gør den funktion? Opdatere den indholdet i min jList??
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.