For-Loop i Dart
Svep för att visa menyn
En for-loop upprepar ett visst kodblock flera gånger. Om vi till exempel vill kontrollera varje elevs betyg i en klass med 32 elever, loopar vi från 1 till 32.
for-loopen används för att upprepa en kodsektion ett känt antal gånger.
Några exempel:
- Beräkna medelåldern för skolans elever. Även om du (programmeraren) kanske behöver hjälp för att ta reda på hur många elever som finns i skolan, kan datorn göra det. Dart uppnår detta genom att använda egenskapen
lengthpå enList; - Skriva ut de jämna talen från 1 till 500;
- Söka i en
Listmed tal, till exempel för att hitta det högsta provresultatet. Återigen vet datorn hur många betyg som finns iList, så enfor-loop är lämplig.
Syntax för for-loopar
Låt oss titta på syntaxen för en for-loop med hjälp av exempelkoden nedan:
for (Initialization; Condition; Increment/Decrement) {
// Сode block
}
For-loopen i Dart har tre delar:
-
Initialization: variabelinitiering som styr antalet loop-iterationer. I detta fall initierar vi variabeln med namnet i och värdet 0;
-
Condition: detta är villkoret som avgör om loopen ska fortsätta iterera. I detta fall kontrollerar vi om värdet i är mindre än 5;
-
Increment eller Decrement är de operationer som utförs på räknaren i slutet av varje loop-iteration.
Varje instruktion i for-loopen separeras med ett semikolon ;.
Exempel
I detta exempel används en for-loop för att skriva ut ett meddelande till konsolen fem gånger. Så här fungerar det:
main.dart
12345void main() { for (int day = 1; day <= 7; day++) { print("Day $day: Time to exercise!"); } }
Föreställ dig att du bygger en enkel träningspåminnelse. Denna kod skriver ut ett meddelande för varje dag och påminner dig om att träna.
int day = 1: initierar variabelndaymed 1 (representerar första träningsdagen);day <= 7: håller loopen igång så längedayär mindre än eller lika med 7 (en hel vecka);day++: ökardaymed 1 efter varje påminnelse;print("Day $day: Time to exercise!"): skriver ut"Day 1: Time to exercise!","Day 2: Time to exercise!"och så vidare till dag 7.
For-in-loopar Syntax
Så här fungerar for-in-loopen i Dart, uppdelad i en enkel struktur:
for (Type variable in collection) {
// Code to execute for each item
}
for: nyckelordet som startar loopen;(Type variable in collection): loopens struktur:Type: datatypen för varje objekt i samlingen (t.ex.String,int);variable: en temporär variabel som håller det aktuella objektet;in collection: samlingen (lista) som loopen itererar över;
{}: loopens kropp, som innehåller koden som körs för varje objekt.
for-loopen gör det enkelt att arbeta med listor.
Exempel
Här är ett exempel:
main.dart
123456void main() { List<String> fruits = ["apple", "banana", "orange"]; for (String fruit in fruits) { print(fruit); } }
Den här koden definierar en lista med strängar som representerar olika fruits: "apple", "banana" och "orange". Listan lagras i variabeln fruits.
for (String fruit in fruits) {
Vi använder en for-in-loop för att gå igenom varje objekt i listan fruits. Den här loopen hämtar automatiskt varje frukt en i taget och tilldelar den till variabeln fruit. Här håller fruit värdet för den aktuella frukten under varje iteration.
print(fruit);
Inuti loopen skrivs den aktuella fruit ut till konsolen. Loopen går sedan vidare till nästa frukt och upprepar processen tills alla objekt i listan har skrivits ut.
Detta tillvägagångssätt är användbart när du arbetar med listor, till exempel för att visa en inköpslista eller bearbeta användarvalda objekt.
Du har en lista med produktnamn. Din uppgift är att komplettera villkoret i loopen så att endast produkter som innehåller bokstaven "o" skrivs ut.
- Komplettera
if-villkoret i loopen för att kontrollera om produktnamnet innehåller bokstaven"o". - Säkerställ att endast produkter som innehåller
"o"(versaler eller gemener) skrivs ut. - Förväntad utdata:
Laptop
Headphones
Mouse
Keyboard
Monitor
main.dart
12345678910111213141516void main() { List<String> products = [ "Laptop", "Headphones", "Mouse", "Keyboard", "USB Cable", "Monitor" ]; for (String product in products) { if (___) { // Complete the condition print(product); } } }
Använd .contains("o") för att kontrollera om strängen innehåller bokstaven "o".
main.dart
12345678910111213141516void 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); } } }
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal