Swift Academy · Lekcja

Tablice dwuwymiarowe i zagnieżdżone kolekcje

Pracować z tablicami tablic oraz spłaszczać je za pomocą flatMap i compactMap

Lekcja 4 z 412 kroki

Tablice dwuwymiarowe i zagnieżdżone kolekcje to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 4 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 Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 4 lekcji w sumie.

Witamy

Tablice 2D i zagnieżdżone kolekcje pozwalają modelować siatki, tabele, grafy oraz dane hierarchiczne. Swift obsługuje je w naturalny sposób — wystarczy zagnieżdżać typy tablic.

Deklarowanie tablicy 2D

```swift var grid: [[Int]] = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] print(grid[1][2]) // 6 ```

Modyfikowanie zagnieżdżonych elementów

```swift var matrix = [[0,0,0],[0,0,0],[0,0,0]] matrix[1][1] = 1 // [[0,0,0],[0,1,0],[0,0,0]] ```

Tworzenie siatki 2D za pomocą map

```swift let rows = 3, cols = 4 let grid = (0..

Iterowanie po tablicy 2D

```swift for row in grid { for val in row { print(val, terminator: " ") } print() } ``` Gdy potrzebna jest modyfikacja, można też użyć indeksów: ```swift for r in grid.indices { for c in grid[r].indices { ... } } ```

flatMap do spłaszczania

```swift let nested = [[1,2,3],[4,5],[6]] let flat = nested.flatMap { $0 } // [1,2,3,4,5,6] ``` Przydatne, gdy trzeba przetwarzać wszystkie elementy jako jedną sekwencję.

Tablice nieregularne

W tablicach 2D języka Swift wiersze nie muszą mieć jednakowej długości: ```swift let jagged: [[Int]] = [[1],[2,3],[4,5,6]] print(jagged[2].count) // 3 ``` Każdy wiersz jest niezależną tablicą.

Tablica słowników

```swift let users: [[String: Any]] = [ ["name": "Alice", "age": 30], ["name": "Bob", "age": 25] ] for user in users { print(user["name"] ?? "?") } ```

Tablica struktur

Zamiast `[String: Any]` należy preferować typowane struktury: ```swift struct User { let name: String; let age: Int } var users = [User(name:"Alice",age:30), User(name:"Bob",age:25)] let sorted = users.sorted { $0.age < $1.age } ```

Rzadkie siatki za pomocą słownika

W przypadku rzadkich danych należy użyć słownika zamiast zagnieżdżonych tablic: ```swift var sparse: [SIMD2: String] = [:] sparse[SIMD2(0,0)] = "start" sparse[SIMD2(9,9)] = "end" ``` Wyszukiwanie działa w czasie O(1), a puste komórki nie zajmują niepotrzebnie pamięci.

Szybkie sprawdzenie

Co zwraca `nested.flatMap { $0 }` dla `[[1,2],[3,4]]`?

Podsumowanie

Najważniejsze informacje: • `[[T]]` — deklarowanie tablic 2D, dostęp za pomocą `[row][col]` • `.flatMap { $0 }` — spłaszczanie zagnieżdżonych tablic • W celu zapewnienia bezpieczeństwa typów należy używać struktur zamiast `[String: Any]` • Tablice nieregularne są dozwolone — wiersze są niezależne • W przypadku rzadkich siatek należy użyć `Dictionary` Kurs ukończony! Dalej: operacje CRUD na słownikach.
Bezpłatny start

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
122
Lekcje
409

Często zadawane pytania

Czy lekcja „Tablice dwuwymiarowe i zagnieżdżone kolekcje” jest bezpłatna?

Tak — pełny tekst „Tablice dwuwymiarowe i zagnieżdżone kolekcje” 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 Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Tablice dwuwymiarowe i zagnieżdżone kolekcje”?

Pracować z tablicami tablic oraz spłaszczać je za pomocą flatMap i compactMap Ćwiczysz Swift 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ąć Swift Academy?

Nie wymagamy żadnego doświadczenia. Swift 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 4 z 4.

Ile czasu zajmuje lekcja „Tablice dwuwymiarowe i zagnieżdżone kolekcje”?

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 Swift Academy?

Tak. Każda lekcja Swift 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

  1. Tworzenie i modyfikowanie tablic
  2. Sortowanie, wyszukiwanie i wycinanie
  3. Map, Filter i Reduce na tablicach
  4. Tablice dwuwymiarowe i zagnieżdżone kolekcje
← Powrót do Swift Academy