remi sture Skrevet 14. november 2005 Del Skrevet 14. november 2005 (endret) Jeg har en JTable, og skriver inn informasjon i den. Når jeg så klikker på en knapp, blir den inntastede infoen lagt inn et objekt, som videre skal legges til i en database. Men jeg vil ha en sjekk om radene virkelig inneholder data før jeg legger det til i databasen, men jeg får feilmelding når jeg prøver "kunde.getTelefon() == null": "The operator == is undefined for the argument type(s) int, null". Det går jo fint med både getNavn() og getEpost(), men dette er jo strings, mens getTelefon er int. Hvordan sjekker jeg om en int er null? KundeVO kunde = new KundeVO( Integer.parseInt((String) KundeGui.modell.getValueAt(indeksForValgtRad,0)), (String) KundeGui.modell.getValueAt(indeksForValgtRad,1), Integer.parseInt((String) KundeGui.modell.getValueAt(indeksForValgtRad,2)), (String) KundeGui.modell.getValueAt(indeksForValgtRad,3) ); if((kunde.getNavn() == null) || (kunde.getTelefon() == null) || (kunde.getEpost() == null)) { KundeGui.txaMelding.setText("Feilmelding! "); KundeGui.modell.removeRow(indeksForValgtRad); } public KundeVO(int id, String navn, int telefon, String epost) { this.id = id; this.navn = navn; this.telefon = telefon; this.epost = epost; } public String getNavn() { return navn; } public int getTelefon() { return telefon; } public String getEpost() { return epost; } Endret 14. november 2005 av remi sture Lenke til kommentar
yonderboy Skrevet 14. november 2005 Del Skrevet 14. november 2005 (endret) En int kan ikke være null, det er en primitiv type. Bare objekter kan være null. Dessuten tror jeg ikke du kan parse en int fra en streng som er null, eller en tom streng - du bør nok sjekke at feltene ikke er tomme før du lager kundeobjektet. Endret 14. november 2005 av yonderboy Lenke til kommentar
remi sture Skrevet 14. november 2005 Forfatter Del Skrevet 14. november 2005 En int kan ikke være null, det er en primitiv type. Bare objekter kan være null. Dessuten tror jeg ikke du kan parse en int fra en streng som er null, eller en tom streng - du bør nok sjekke at feltene ikke er tomme før du lager kundeobjektet. 5151286[/snapback] Hm... Oki. Men hvordan fikser jeg det da? Lenke til kommentar
remi sture Skrevet 14. november 2005 Forfatter Del Skrevet 14. november 2005 Nå fikk jeg til den sjekken! Men nå har jeg et annet problem: Når jeg fyller inn info i JTabel'en uten å flytte fokus fra den siste kollonnen i den raden jeg skriver i før jeg klikker på en knapp, får jeg NumberFormatException. Er det mulig å få vekk fokus fra den markerte raden ved klikk på en knapp? Lenke til kommentar
Mr.Garibaldi Skrevet 14. november 2005 Del Skrevet 14. november 2005 Er det mulig å få vekk fokus fra den markerte raden ved klikk på en knapp? 5151728[/snapback] Du kan kanskje bruke .requestFocus() på en annen rad/celle enn den som blir editert, eller så kan du kanskje bruke KeyboardFocusManager.clearGlobalFocusOwner() Den siste er nok den enkleste... Lenke til kommentar
remi sture Skrevet 14. november 2005 Forfatter Del Skrevet 14. november 2005 "Cannot make a static reference to the non-static method clearGlobalFocusOwner() from the type KeyboardFocusManager" Hvordan bruker man den da? Lenke til kommentar
vidarv Skrevet 14. november 2005 Del Skrevet 14. november 2005 (endret) En int kan ikke være null, det er en primitiv type. Bare objekter kan være null. Dessuten tror jeg ikke du kan parse en int fra en streng som er null, eller en tom streng - du bør nok sjekke at feltene ikke er tomme før du lager kundeobjektet. 5151286[/snapback] du må evt bruke wrapperklassen java.lang.Integer Integer tall = Integer.parseInt("ditt tall..."); Endret 14. november 2005 av vidarv Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå