View Single Post
Lite kontroversiell
ticks's Avatar
Sitat av tobbi94 Vis innlegg
Jeg har brukt if-setningen tilsynelatende nøyaktig slik den er vist i boken.
Hva er det med syntaksen som er galt?
Vis hele sitatet...
Semikolonet. Og på den første if-setningen har du laget en kodeblokk, med { og }, men ikke på resten.

Denne setningen er ikke gyldig:

Kode

if (poengSum < 15);
   System.out.printf("Karakter for student nr. %d er F. Ikke bestått.%n", studNr);
Alle disse tre setningene er gyldige:

Kode

if (poengSum < 15) 
   System.out.printf("Karakter for student nr. %d er F. Ikke bestått.%n", studNr);

Kode

if (poengSum < 15) System.out.printf("Karakter for student nr. %d er F. Ikke bestått.%n", studNr);

Kode

if (poengSum < 15) {
   System.out.printf("Karakter for student nr. %d er F. Ikke bestått.%n", studNr);
}
Om du ikke bruker kodeblokker { og }, vil if-setningen utføre all kode frem til neste semikolon. Om du vil utføre flere instrukser innenfor samme if-blokk, må du altså gjøre det slik som det er gjort i den tredje setningen. Det er allikevel alltid lurt å bruke slike blokker, for det gjør koden langt lettere å forstå både for deg selv og andre som leser den.

Kode

if (poengSum < 15) {
   System.out.printf("Karakter for student nr. %d er F. Ikke bestått.%n", studNr);
   System.out.printf("Instruks #2");
   poengSum += 10; /* Instruks #3 */
}
Sist endret av ticks; 29. juli 2011 kl. 17:44.