Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære For-Løkke i Dart | Løkker i Dart
Introduktion til Dart

bookFor-Løkke i Dart

Stryg for at vise menuen

En for-løkke gentager et bestemt kodeblok flere gange. For eksempel, hvis vi vil kontrollere hver elevs karakter i en klasse med 32 elever, løkker vi fra 1 til 32.

for-løkke bruges til at gentage en sektion af kode et kendt antal gange.

Nogle eksempler:

  • Beregning af gennemsnitsalderen for skolens elever. Selvom du (programmøren) måske har brug for hjælp til at finde ud af, hvor mange elever der er på skolen, kan computeren gøre det. Dart opnår dette ved at bruge egenskaben lengthList;
  • Udskrivning af de lige tal fra 1 til 500;
  • Søgning i en List af tal, såsom at finde den højeste score i en test. Igen ved computeren, hvor mange karakterer der er i List, så en for-løkke er passende.

For-løkke syntaks

Lad os se på syntaksen for for-løkke ved at bruge eksemplet nedenfor:

for (Initialization; Condition; Increment/Decrement) {
  // Сode block
}

For-løkken i Dart har tre dele:

  • Initialization: variabelinitialisering styrer antallet af løkke-iterationer. I dette tilfælde initialiserer vi variablen med navnet i og værdien 0;

  • Condition: dette er betingelsen, der afgør, om løkken skal fortsætte. I dette tilfælde tjekker vi, om værdien i er mindre end 5;

  • Increment eller Decrement er de operationer, der udføres på tælleren ved slutningen af hver iteration.

Hver af disse instruktioner i for-løkken adskilles med et semikolon ;.

Eksempel

I dette eksempel bruger vi en for-løkke til at udskrive en besked til konsollen fem gange. Sådan fungerer det:

main.dart

main.dart

copy
12345
void main() { for (int day = 1; day <= 7; day++) { print("Day $day: Time to exercise!"); } }

Forestil dig, at du laver en simpel træningspåmindelse. Denne kode udskriver en besked for hver dag og minder dig om at træne.

  • int day = 1: initialiserer variablen day med 1 (repræsenterer den første træningsdag);
  • day <= 7: holder løkken kørende, så længe day er mindre end eller lig med 7 (en hel uge);
  • day++: øger day med 1 efter hver påmindelse;
  • print("Day $day: Time to exercise!"): udskriver "Day 1: Time to exercise!", "Day 2: Time to exercise!" og så videre indtil dag 7.

For-in-løkker syntaks

Her er, hvordan for-in-løkker fungerer i Dart, opdelt i en enkel struktur:

for (Type variable in collection) {
  // Code to execute for each item
}
  • for: nøgleordet, der starter løkken;
  • (Type variable in collection): løkkestrukturen:
    • Type: datatypen for hvert element i samlingen (f.eks. String, int);
    • variable: en midlertidig variabel, der indeholder det aktuelle element;
    • in collection: samlingen (liste), som løkken itererer over;
  • {}: løkkens krop, som indeholder koden, der køres for hvert element.

for-løkker gør det nemt at arbejde med lister.

Eksempel

Her er et eksempel:

main.dart

main.dart

copy
123456
void main() { List<String> fruits = ["apple", "banana", "orange"]; for (String fruit in fruits) { print(fruit); } }

Denne kode definerer en liste af strenge, der repræsenterer forskellige fruits: "apple", "banana" og "orange". Listen gemmes i variablen fruits.

for (String fruit in fruits) {

Vi bruger en for-in-løkke til at gennemgå hvert element i listen fruits. Denne løkke henter automatisk hver frugt én ad gangen og tildeler den til variablen fruit. Her indeholder fruit værdien af den aktuelle frugt under hver iteration.

print(fruit); 

Inde i løkken udskrives den aktuelle fruit til konsollen. Løkken går derefter videre til den næste frugt og gentager processen, indtil alle elementer i listen er udskrevet.

Denne metode er nyttig, når man arbejder med lister, f.eks. til at vise en indkøbsliste eller behandle bruger-valgte elementer.

Du får en liste over produktnavne. Din opgave er at fuldføre betingelsen inde i løkken, så kun produkter der indeholder bogstavet "o" bliver udskrevet.

  1. Fuldfør if-betingelsen inde i løkken for at tjekke, om produktnavnet indeholder bogstavet "o".
  2. Sørg for, at kun produkter der indeholder "o" (store eller små bogstaver) bliver udskrevet.
  3. Forventet output:
Laptop
Headphones
Mouse
Keyboard
Monitor
main.dart

main.dart

copy
12345678910111213141516
void main() { List<String> products = [ "Laptop", "Headphones", "Mouse", "Keyboard", "USB Cable", "Monitor" ]; for (String product in products) { if (___) { // Complete the condition print(product); } } }

Brug .contains("o") for at tjekke, om strengen indeholder bogstavet "o".

main.dart

main.dart

copy
12345678910111213141516
void main() { List<String> products = [ "Laptop", "Headphones", "Mouse", "Keyboard", "USB Cable", "Monitor" ]; for (String product in products) { if (product.toLowerCase().contains("o")) { // Check if "o" is in the product name print(product); } } }
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 4. Kapitel 4
some-alt