Gå til innhold

Hjelp til ord/begrep forklaring!


Anbefalte innlegg

	   public static int lesHeltall(String ledetekst){
	   int tall = 0;
	   boolean ok = false;
	   do {
		   String lestTekst = lesTekst(ledetekst);
		   try {
			   tall = Integer.parseInt(lestTekst);
			   ok = true;
		   } catch (NumberFormatException e){
			   showMessageDialog(null, "ugyldig heltall. \n");
		   }
		  } while (!ok);
		   return tall;
	   }

 

Dette er en kode som er skrevet i boka mi, men jeg har et par spørsmål, har prøvd å lese, men har litt problemer med å skjønne det, vet det er mange flinke på forumet som sikkert er gode til å forklare også;)

 

Jeg lurer på:

int tall = 0 (Hva er det egentlig dette står for?..)

boolean ok = false (Hva er det egentlig denne setningen sier, tror jeg vet hva dette betyr, men er alikevel usikker)

do { (dette står vel for at den skal gjøre følgende linje)

try { (dette står vel for at den skal prøve denne linja hvis boolean = ok??)

catch (NumberFormatException e){ (denne skjønner jeg ikke helt, catch?, NumberFormatException er vel at den skjekker om noe stemmer og står "e" på slutten der for heltall??

while (!ok) (skjønner ikke helt setninga, men er det at hvis boolan er OK blir det neste setning igangsatt som er retur tall;?)

Endret av nirosan
Lenke til kommentar
Videoannonse
Annonse

int tall = 0 (Hva er det egentlig dette står for?..)

 

tall er en variabel som defineres her. Den er av typen int (integer, heltall) og skal settes lik 0 i utgangspunktet

 

 

boolean ok = false (Hva er det egentlig denne setningen sier, tror jeg vet hva dette betyr, men er alikevel usikker)

ok er en variabel som defineres her. Den er av typen boolean (som betyr at den eneten er sann/true eller false/usan). Den skal her settes lik false i utganaspunktet.

 

 

do { (dette står vel for at den skal gjøre følgende linje)

while (!ok) (skjønner ikke helt setninga, men er det at hvis boolan er OK blir det neste setning igangsatt som er retur

 

do og while hører sammen. Det betyr rett og slett: Gjør alt som står inne i klammene på nytt og på nytt helt til !ok==false.

!ok betyr "det motsatte/negasjonen av ok. Dvs at hvis ok er false, så vil !ok være true.

Så dette betyr at amnsn kal gjøre det som står imellom klammene helt til ok blir true (og da !ok blir false).

 

try { (dette står vel for at den skal prøve denne linja hvis boolean = ok??)

catch (NumberFormatException e){ (denne skjønner jeg ikke helt, catch?, NumberFormatException er vel at den skjekker om noe stemmer og står "e" på slutten der for heltall??

tall;?)

 

Hvis det skjer noe uventet, et avvik, så kommer det en exception. Her gjør man noe der det er en risiko for at det kommer et slikt exception. Så koden sier: Prøv å gjøre dette, men hvis det kommer en exception "grip"/catch feilen før hele programmet skjærer seg og gjør ddet som står i "catch"-blokken istedenfor. I dette tilfellet får du en feil hvis du ikek har et heltall og vil få en melding om det.

 

EDIT:Ser en liten feil som jeg har rettet i bold

Endret av Ekko
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...