Przekształcanie za pomocą map i filter
Przekształcaj wartości przepływające w dół strumienia
Przekształcanie za pomocą map i filter to bezpłatna lekcja SwiftUI Academy na CoddyKit. To lekcja 2 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 SwiftUI Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs SwiftUI Academy zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
Operators Reshape Streams
Between a publisher and its subscriber you can insert operators that transform values as they flow downstream.
map Transforms Each Value
The map operator runs a closure on every value and emits the result, changing the stream's shape.
[1, 2, 3].publisher
.map { $0 * 10 }map Can Change the Type
Because map returns whatever you want, the Output type can change, like turning numbers into strings.
[1, 2].publisher
.map { "Item \($0)" }filter Drops Values
The filter operator keeps only the values whose closure returns true and silently discards the rest.
[1, 2, 3, 4].publisher
.filter { $0 % 2 == 0 }Chaining Operators
Operators compose cleanly: chain filter then map to first narrow the stream, then reshape it.
.filter { $0 > 0 }
.map { $0 * 2 }Order Matters
Each operator sees only the output of the one above it, so reordering map and filter can quietly change your result.
compactMap Removes nil
Use compactMap when your transform may return nil, and Combine drops those empty results for you.
["1", "x", "3"].publisher
.compactMap { Int($0) }removeDuplicates
The removeDuplicates operator emits a value only when it differs from the previous one.
subject.removeDuplicates()scan Accumulates
The scan operator carries a running result, emitting an updated total for every value, like a live sum.
.scan(0) { total, next in total + next }Readable Pipelines
Reading top to bottom, a pipeline tells a story: this is where the declarative power of operators shines.
.filter { !$0.isEmpty }
.map { $0.uppercased() }Pure Transforms
Keep operator closures pure: avoid side effects so each value transforms predictably and tests stay simple.
Quick Check
A stream emits 1, 2, 3, 4. After .filter { $0 % 2 == 0 }.map { $0 * 10 }, what is emitted?
Recap: Shaping the Flow
You learned to reshape streams: map transforms, filter narrows, and compactMap clears out nil values. ✨
Ucz się Swift dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Przekształcanie za pomocą map i filter” jest bezpłatna?
Tak — pełny tekst „Przekształcanie za pomocą map i filter” 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 SwiftUI Academy, przejdź na CoddyKit PRO. Kurs SwiftUI Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Przekształcanie za pomocą map i filter”?
Przekształcaj wartości przepływające w dół strumienia Ćwiczysz SwiftUI 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ąć SwiftUI Academy?
Nie wymagamy żadnego doświadczenia. SwiftUI 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 2 z 4.
Ile czasu zajmuje lekcja „Przekształcanie za pomocą map i filter”?
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 SwiftUI Academy?
Tak. Każda lekcja SwiftUI 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
- Wydawcy i subskrybenci
- Przekształcanie za pomocą map i filter
- Debounce dla wyszukiwania na żywo
- Łączenie Combine ze SwiftUI