Söka i och sortera listor
Find, contains, indexOf och sort
Söka i och sortera listor är en gratis lektion i Dart Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Dart Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Dart Academy innehåller totalt 4 lektioner.
Hitta objekt
Listor ger dig snabba sätt att ställa frågor om sitt innehåll, till exempel om ett objekt finns eller var det finns. Nu utforskar vi sökning. 🔍
Innehåller den objektet?
Metoden contains returnerar true eller false och talar om huruvida ett värde finns någonstans i listan.
var pets = ['cat', 'dog'];
print(pets.contains('dog')); // trueVar finns det?
Använd indexOf för att hitta ett objekts position. Den returnerar det första matchande indexet eller -1 om värdet saknas.
print(pets.indexOf('dog')); // 1Saknas betyder minus ett
När indexOf inte hittar värdet returnerar den -1. Att kontrollera om resultatet är -1 är ett enkelt sätt att hantera objekt som saknas.
print(pets.indexOf('fish')); // -1Första träffen enligt regel
Sök med ett villkor genom att använda firstWhere. Den returnerar det första objektet som klarar din testfunktion.
var nums = [3, 8, 5];
print(nums.firstWhere((n) => n > 4)); // 8Any och every
Ställ övergripande frågor snabbt. any är true om minst ett objekt matchar, medan every bara är true när alla gör det.
print(nums.any((n) => n > 7)); // trueSortera på plats
Metoden sort ordnar om själva listan, som standard från minst till störst. Den ändrar originalet och returnerar inget.
var scores = [3, 1, 2];
scores.sort();
print(scores); // [1, 2, 3]Sortera strängar
När du anropar sort på text ordnas den som standard alfabetiskt, genom att tecken jämförs från vänster till höger.
var names = ['Bea', 'Al', 'Cy'];
names.sort(); // [Al, Bea, Cy]Anpassad sorteringsordning
Skicka in en comparator för att sortera enligt din egen regel. Returnera ett negativt tal för att placera a före b och ett positivt tal för att vända på dem.
scores.sort((a, b) => b - a); // descendingVänd en lista
Gettern reversed ger en omvänd vy av listan. Omslut den med toList när du behöver få tillbaka en riktig omvänd lista.
print(scores.reversed.toList());lastIndexOf
När det finns dubbletter hittar lastIndexOf den sista matchande positionen i stället för den första.
var bits = [1, 0, 1];
print(bits.lastIndexOf(1)); // 2Snabb kontroll
Du anropar indexOf för ett värde som inte finns. Vad returneras?
Sammanfattning
Nu kan du undersöka och ordna listor: contains, indexOf, firstWhere, any, every och sort med anpassade regler. Nu kan du bearbeta data! 📊
Lär dig Dart med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 30
- Lektioner
- 120
Vanliga frågor
Är lektionen ”Söka i och sortera listor” gratis?
Ja – hela texten till ”Söka i och sortera listor” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Dart Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Dart Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”Söka i och sortera listor”?
Find, contains, indexOf och sort Ni övar på Dart Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Dart Academy?
Du behöver inga förkunskaper. Utbildningen i Dart Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Söka i och sortera listor”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Dart Academy-lektionen?
Ja. Varje Dart Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Skapa listor och använda index
- Lägga till, ta bort och uppdatera objekt
- Söka i och sortera listor
- Omforma med map, where och toList