Skip to main content

while

De while-lus is een van de meest gebruikte controle structuren in Dart. Deze lus voert een blok code herhaaldelijk uit zolang een bepaalde voorwaarde waar is. Het is vooral handig wanneer je niet weet hoe vaak de lus moet worden uitgevoerd en de herhaling afhankelijk is van een bepaalde conditie.

Basisgebruik van while

Een while-lus controleert de voorwaarde vóór elke iteratie. Hier is een eenvoudig voorbeeld:

void main() {
  int count = 0;

  while (count < 5) {
    print('Count is: $count');
    count++;
  }
}

In dit voorbeeld blijft de lus draaien zolang de waarde van count minder is dan 5. Bij elke iteratie wordt de waarde van count met 1 verhoogd en afgedrukt.

Oneindige lussen en het breken van lussen

Een while-lus kan ook oneindig worden als de voorwaarde altijd waar blijft. In dat geval kun je een break-verklaring gebruiken om de lus voortijdig te beëindigen:

void main() {
  int count = 0;

  while (true) {
    print('Count is: $count');
    count++;
    if (count == 5) {
      break;
    }
  }
}

In dit voorbeeld blijft de lus oneindig draaien totdat count gelijk is aan 5, waarna de break-verklaring de lus beëindigt.

do-while-lus

Een variatie op de while-lus is de do-while-lus. Het verschil is dat de voorwaarde aan het einde van de lus wordt gecontroleerd, waardoor de code binnen de lus altijd minstens één keer wordt uitgevoerd.

Voorbeeld:

void main() {
  int count = 0;

  do {
    print('Count is: $count');
    count++;
  } while (count < 5);
}

In dit voorbeeld wordt de lus uitgevoerd zolang count minder is dan 5, maar de code binnen de lus wordt altijd minstens één keer uitgevoerd, ongeacht de waarde van count.

Geavanceerd gebruik van while

Naast eenvoudige iteraties, kun je de while-lus gebruiken voor complexere taken zoals het doorlopen van gegevensstructuren of het wachten op een bepaalde conditie.

Voorbeeld van het doorlopen van een lijst met behulp van een while-lus:

void main() {
  List<String> namen = ['Alice', 'Bob', 'Charlie'];
  int index = 0;

  while (index < namen.length) {
    print('Naam: ${namen[index]}');
    index++;
  }
}

In dit voorbeeld gebruiken we een while-lus om door de lijst namen te itereren en elke naam af te drukken.

Conclusie

De while-lus is een krachtige en flexibele controle structuur in Dart. Of je nu eenvoudige herhalingen of complexe iteraties nodig hebt, de while-lus biedt de mogelijkheden om je programma efficiënt te beheren. Door de basisprincipes en geavanceerde technieken te begrijpen, kun je de while-lus effectief gebruiken in je Dart-programma’s.