Swift Academy · Lektion

2D-arrays og indlejrede collections

Arbejd med arrays af arrays, og fladgør dem med flatMap og compactMap.

Lektion 4 af 412 trin

2D-arrays og indlejrede collections er en gratis Swift Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Swift Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Swift Academy-kurset indeholder 4 lektioner i alt.

Velkommen

2D-arrays og indlejrede samlinger repræsenterer gitre, tabeller, grafer og hierarkiske data. Swift håndterer dem naturligt — du skal blot indlejre array-typer.

Deklarering af en 2D-Array

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

Ændring af indlejrede elementer

```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]] ```

Oprettelse af et 2D-gitter med map

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

Gennemløb af en 2D-Array

```swift for row in grid { for val in row { print(val, terminator: " ") } print() } ``` Eller med indekser, når der er behov for ændringer: ```swift for r in grid.indices { for c in grid[r].indices { ... } } ```

flatMap til udfladning

```swift let nested = [[1,2,3],[4,5],[6]] let flat = nested.flatMap { $0 } // [1,2,3,4,5,6] ``` Nyttigt, når du skal behandle alle elementer som én samlet sekvens.

Takkede arrays

Swift 2D-arrays behøver ikke ensartede rækkelængder: ```swift let jagged: [[Int]] = [[1],[2,3],[4,5,6]] print(jagged[2].count) // 3 ``` Hver række er et uafhængigt array.

Array af ordbøger

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

Array af strukturer

Foretræk typede strukturer frem for `[String: Any]`: ```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 } ```

Sparsomme gitre med Dictionary

Til sparsomme data skal du bruge en ordbog i stedet for indlejrede arrays: ```swift var sparse: [SIMD2: String] = [:] sparse[SIMD2(0,0)] = "start" sparse[SIMD2(9,9)] = "end" ``` Opslag i O(1) og ingen spildt hukommelse til tomme celler.

Hurtigt tjek

Hvad returnerer `nested.flatMap { $0 }` for `[[1,2],[3,4]]`?

Opsummering

Vigtigste pointer: • `[[T]]` — deklarerer 2D-arrays, som tilgås med `[row][col]` • `.flatMap { $0 }` — udflader indlejrede arrays • Brug strukturer frem for `[String: Any]` for typesikkerhed • Takkede arrays er helt fine — rækkerne er uafhængige • Brug en `Dictionary` til sparsomme gitre Kurset er gennemført! Næste: CRUD-handlinger i Dictionary.
Gratis at komme i gang

Lær Swift med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
122
Lektioner
409

Ofte stillede spørgsmål

Er lektionen “2D-arrays og indlejrede collections” gratis?

Ja — alle 3 lektioner i læringssporet Swift Academy, inklusive “2D-arrays og indlejrede collections”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Swift Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “2D-arrays og indlejrede collections”?

Arbejd med arrays af arrays, og fladgør dem med flatMap og compactMap. Du øver dig i Swift Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Swift Academy?

Der kræves ingen tidligere erfaring. Swift Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “2D-arrays og indlejrede collections”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Swift Academy-lektion?

Ja. Alle Swift Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Oprettelse og ændring af arrays
  2. Sortering, søgning og udsnit
  3. Map, filter og reduce på arrays
  4. 2D-arrays og indlejrede collections
← Tilbage til Swift Academy