Arrays Flashcards

(49 cards)

1
Q

Hvad er et array?

A

Det er en Collection (liste), hvor man kan gemme et fast antal elementer af samme datatype sammenhængende i hukommelsen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

På hvor mange måder kan man initialisere et array?

A
  1. Angiv med størrelse
  2. Initialiser med størrelse
  3. Initialiser uden type
  4. Initialiser som var
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Er arrays kovariante I C#?

A

Nej, i modsætning til Java kan man ikke tildele et array af en derived type (child) til et array af basistypen (parent).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Kan man ændre størrelsen på et array i C#?

A

Nej, ligesom i Java er størrelsen fastsat ved initialisering.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Kan man gemme mere end én type element i et enkelt array I C#?

A

Nej, arrays er homogene i C#, så de er kun i stand til at gemme én type ad gangen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Hvordan får man adgang (access) til et array?

A
  1. Adgang med firkantede parenteser
  2. Iterate med standard for-loop
  3. Interate med en foreach loop
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Hvad sker der, når man forsøger at få adgang til et element på et ugyldigt indekspunkt i et array?

A

Programmet vil kaste en ‘IndexOutOfRangeException’ under runtime.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Hvad arver et array fra?

A

Den arver fra “System.Array” type.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Hvilke metoder arver arrayet?

A
  1. Min( )
  2. Max( )
  3. Sum( )
  4. Average( )
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Hvilke metoder indeholder et statisk array?

A
  1. Sort( )
  2. reverse( )
  3. Copy( )
  4. Fill( )
  5. Empty( )
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Er et array i C# en referencetype eller en værditype?

A

Reference type.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Kan du ændre indholdet af et array inde i en metode?

A

Ja, fordi det er en reference type.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Hvad er multidimensionelle arrays i C#?

A

Det er arrays der har mere end 1 dimension, som tillader opbevaring af data i form af en matrix med flere rækker og kolonner.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Hvor mange multidimensionelle arrays har C# I forhold til Java?

A

C# har 2 mens Java har 1.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Nævn de to multidimensionelle arrays C# har.

A
  1. Jagged arrays
  2. Multi-dimensional arrays.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Hvad er Jagged arrays I C#?

A
  1. “Arrays of arrays”.
  2. Det er som at have flere separate arrays, der er organiseret inden i et enkelt array, hvor hvert af disse indre arrays kan have forskellige længder eller antal elementer.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Hvad er formålet med Jagged arrays?

A
  1. Mulighed for mere fleksibel opbevaring af data.
  2. Nyttigt når man arbejder med datasæt, der ikke følger en fast struktur eller størrelse.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Kan sub-arrays i et jagged array have forskellige længder?

A

Ja.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Kan du ændre størrelsen på et jagged array?

A

Teknisk set ja, fordi du kan tildele nye elementer til sub-arrays.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Hvordan iterere man gennem et jagged array i C#?

A
  • Nested for-loop, hvor det første loop itererer gennem sub-arrays, og det andet loop itererer gennem elementer i sub-arrays.
21
Q

Er alle dimensioner i et multidimensionel array faste?

A

Ja, når arrayet er oprettet, forbliver størrelsen af hver dimension konstant.

22
Q

Hvordan er dimensionerne angivet i et multidimensionelt array?

A

Ved brug af kommaer.

23
Q

Hvordan får du adgang til elementer i et multidimensionel array?

A

Det tilgås ved hjælp af kommaer.

24
Q

Hvorfor bruger man kommaer til at tilgå elementer i et multidimensionel array?

A

Hver dimension er adskilt af et komma, der angiver indekspositionen for den pågældende dimension.

25
Kan et multidimensionel array have et hvilket som helst antal dimensioner?
Ja.
26
Hvad er en indexer I c#?
Det er en property der giver adgang til elementer i en klasse eller struct ved hjælp af indekseringsnotation, ligesom i et array
27
Kan en indekser have flere parametre?
Ja, parametrene kan også have forskellige typer.
28
Kan en indekser være 'read-only'?
- Ja, i så fald bør du kun definere en 'get'-accessor og udelade 'set'.
29
Kan man overloade en indekser?
Ja, men så skal man definere forskellige versioner af indexer-metoden med forskellige sæt parametre.
30
Hvad er en index struct?
Det en specialdefineret struktur, der bruges til at repræsentere indeksværdier [Index].
31
Hvor mange properties indeholder index structs og hvad hedder de?
1. int Value 2. bool IsFromEnd
32
Hvad er en Range I C#?
Det er en construct, der giver mulighed for at få adgang til en specifik række af elementer i et array.
33
Hvordan definere man en range?
De defineres ved hjælp af operatoren " .. ", som adskiller intervallets start- og slutindeks.
34
Kan en range være åbent?
Ja, hvis man udelader start- eller slutindekset i intervallet.
35
Kan man ændre elementer inden for en range?
Ja, man kan tildele en ny værdi til elementer i en range.
36
Kan ranges bruges på multidimensionelle arrays (f.eks. jagged arrays)?
Nej, de er beregnet til en-dimensionelle collections (liste, arrays mm).
37
Hvad er en span i C#?
Det er et fleksibelt overblik over en række elementer, der kan ændre sig dynamisk.
38
Har en span en generic type?
Ja, hvilket betyder, at det kan arbejde med forskellige underliggende datatyper (integer, character mm).
39
Er Span en IEnumerable?
Ja, Span implementerer IEnumerable interfacet, som gør det muligt at bruge det i forskellige LINQ-operationer og andre konstruktioner, der arbejder med collections.
40
Hvordan kan en span konverteres tilbage til et array?
Ved hjælp af ToArray()-metoden. Denne metode opretter et nyt array og kopierer elementerne i Span ind i det.
41
Hvad er forskellen mellem en span og et array?
1. Spans har ikke en fast størrelse. 2. Spans har højere ydeevne, fordi de undgår unødvendige hukommelsestildelinger og kopiering.
42
Kan man ændre elementerne inden for en span?
Ja, ved at bruge indeksering til at få adgang til og ændre individuelle elementer.
43
Kan spans bruges med værdityper og referencetyper?
Ja, spans giver en måde at arbejde med arrays af enhver type.
44
Hvad er object indexers i C#?
Det er en speciel type af property på en klasse eller struct, der kan tilgås som et array.
45
Hvad er formålet med object indexers i C#?
Den giver mulighed for at definere custom indeksering og multipel indeksering.
46
Hvordan definere man et object index?
Ved hjælp af nøgleordet "this" efterfulgt af firkantede parenteser [ ].
47
Kan enten get eller set udelades i object indexers?
Ja, hvilket giver mulighed for henholdsvis write-only eller read-only indeksering.
48
Hvad er write-only indeksering?
Dette tillader setting af værdier, men giver ikke mulighed for at hente dem.
49
Hvad er read-only indeksering?
Dette tillader hentning af værdier, men giver ikke mulighed for at sette dem på.