Zbiory i gwarantowana unikatowość
Przechowywanie elementów bez duplikatów
Zbiory i gwarantowana unikatowość to bezpłatna lekcja Dart Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Dart Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Dart Academy zawiera 4 lekcji w sumie.
Czym jest Set
Set to nieuporządkowany zbiór, w którym każdy element jest unikatowy. To podstawowe narzędzie, gdy duplikaty nie powinny w ogóle istnieć. 👍
Tworzenie Set
Użyj nawiasów klamrowych z wartościami, aby utworzyć Set. Dart rozpoznaje elementy i wie, że jest to set, a nie map.
var colors = {'red', 'green', 'blue'};Puste Set wymagają typu
Puste nawiasy klamrowe oznaczają pusty map, a nie set. Aby utworzyć pusty Set, zapisz jego typ, żeby Dart znał Twój zamiar.
var tags = <String>{};Duplikaty po prostu znikają
Dodanie wartości, która już istnieje, niczego nie zmienia. Set po cichu przechowuje tylko jedną kopię każdego elementu.
var nums = {1, 2, 2, 3};Dodawanie elementów
Wywołaj add, aby wstawić wartość. Jeśli już się tam znajduje, set pozostaje bez zmian i nie jest zgłaszany żaden błąd.
var s = <int>{};
s.add(5);
s.add(5);Usuwanie elementów
Użyj remove, aby usunąć wartość. Metoda zwraca true, jeśli element istniał, oraz false, jeśli go nie było.
var s = {1, 2, 3};
s.remove(2);Sprawdzanie przynależności
Metoda contains szybko odpowiada na pytanie typu tak lub nie. To właśnie szybkie wyszukiwanie jest prawdziwą supermocą setów.
var s = {'a', 'b'};
print(s.contains('a'));Jaki jest jego rozmiar
Właściwość length informuje, ile unikatowych elementów znajduje się obecnie w secie.
var s = {1, 1, 2, 3};
print(s.length);Sety są nieuporządkowane
Nie należy polegać na kolejności elementów w Set. Jeśli potrzebujesz stałej kolejności, użyj zamiast niego List.
Od List do Set
Owiń listę w set, aby natychmiast usunąć duplikaty. To najprostszy sposób na usunięcie duplikatów z wartości.
var unique = {1, 2, 2, 3}.toList();Iterowanie po secie
Set jest iterable, więc pętla for-in odwiedza po kolei każdy unikatowy element.
for (var c in {'red', 'blue'}) {
print(c);
}Szybkie sprawdzenie
Dodajesz tę samą wartość do Set dwa razy. Co się stanie?
Podsumowanie
Dobra robota! Set przechowuje unikatowe, nieuporządkowane elementy i zapewnia szybkie operacje add, remove oraz contains. Sięgaj po niego, gdy duplikaty nie powinny występować. 🎉
Często zadawane pytania
Czy lekcja „Zbiory i gwarantowana unikatowość” jest bezpłatna?
Tak — pełny tekst „Zbiory i gwarantowana unikatowość” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Dart Academy, przejdź na CoddyKit PRO. Kurs Dart Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Zbiory i gwarantowana unikatowość”?
Przechowywanie elementów bez duplikatów Ćwiczysz Dart Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Dart Academy?
Nie wymagamy żadnego doświadczenia. Dart Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Zbiory i gwarantowana unikatowość”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Dart Academy?
Tak. Każda lekcja Dart Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Zbiory i gwarantowana unikatowość
- Operacje na zbiorach: union, intersection, difference
- Mapy jako magazyny par klucz-wartość
- Iterowanie po wpisach, kluczach i wartościach