Områder i Swift (med eksempler)

I denne artikkelen vil du lære om rekkevidde, type og brukssaker i Swift.

Et område er et intervall av verdier. Et enkelt eksempel på rekkevidde er 0,1,2,3,4,5,6,7,8,9 fordi tallene er sekvensielle fra 0 til 9.

Vi kan lage rekkevidde raskt ved hjelp av to rekkeviddeoperatører beskrevet nedenfor:

1. Operatør for lukket rekkevidde (nedre … øvre del)

Den inkluderer alle verdiene i intervallet (nedre til øvre bunn). Det er erklært ved hjelp av (3 prikker) operator.

F.eks .: 1… 3 Definerer område som inneholder verdier 1,2,3

2. Halvåpent operatør (nedre grense …

Den inkluderer alle verdiene i intervallet (nedre til øvre bunn), men ekskluderer det siste (øvre bundet) tallet. Det er erklært ved hjelp av … <operatør.

F.eks .: 1… <3 Definerer område som inneholder verdiene 1 og 2

Typer av rekkevidde

1. Lukket område (nedre område … øvre del)

Områder opprettet med lukket område-operatør kalles lukket område. Den inkluderer alle verdiene fra nedre til øvre.

Eksempel 1: Skrive ut verdier for lukket område ved hjelp av for-in-loop

 // 1… 3 Defines a range containing values 1, 2 and 3 for value in 1… 3 ( print(value) ) 

Når du kjører programmet, vil utdataene være:

 1 2 3 

Ovennevnte eksempel oppretter et område som inneholder tall fra 1 til 3 ( 1… 3). Vi brukte en in-loop for å se hvilke verdier området inneholder. For å lære mer om for-in-løkker, besøk Swift for-in-loop.

Ved hjelp av in-loop kan vi se at lukket område inneholder alle verdier i det gitte området inkludert de nedre (1) og øvre (3) grenseverdiene.

2. Halvåpent område (nedre grense …

Områder opprettet med halvåpentoperatøren kalles halvåpne områder. Den inkluderer alle verdier fra nedre til øvre grense, men ekskluderer den øvre grensen.

Eksempel 2: Utskrift av halvåpne verdier ved hjelp av for-in-løkke

 // 1… <3 Defines a range containing values 1,2 for value in 1… <3 ( print(value) ) 

Når du kjører programmet, vil utdataene være:

 1 2 

I eksemplet ovenfor har vi brukt in-loop for å se hvordan halvåpent utvalg fungerer.

I stedet for å skrive ut alle verdiene, kan vi tydelig se at bruk av halvåpen operatør bare skriver ut 1 og 2, og det ekskluderer den øvre grensen (dvs. 3).

3. Ensidig rekkevidde

Ensidig rekkevidde er de typene rekkevidde som fortsetter så langt som mulig i en retning. Den kan opprettes ved å bruke både halvåpent operatør og lukket rekkevidde, men operatøren kan ha en verdi på bare den ene siden.

Eksempel 3: Ensidig rekkevidde mindre enn 2

 let range =… <2 print(range.contains(-1)) print(range.contains(2)) 

Når du kjører programmet, vil utdataene være:

 sant usant 

Ovennevnte eksempel oppretter et ensidig område ved hjelp av halvåpent rekkeviddeoperatør som inneholder tall mindre enn to.

For å validere resultatet vårt har vi brukt contains metoden. Den containsmetoden returnerer ganske enkelt truehvis elementet ligger innenfor intervallet ellers returnerer false.

range.contains(-1)sjekker om -1 ligger innenfor området eller ikke. Siden det er ensidig område med øvre grense 2 og -1 <2 ligger det innenfor området og print(range.contains(-1))utgangene truepå skjermen.

However, because of half-open range operator, the upper bound value(2) does not contains inside the range. So, range.contains(2) returns false.

Example 4:One-sided range starting from 2

 let range = 2… print(range.contains(100)) print(range.contains(1)) 

When you run the program, the output will be:

 true false 

The above example creates a one sided range using closed operator that contains numbers from 2 to any values greater than 2.

range.contains(100) checks if 100 lies inside the range or not. Since, its one sided range and 100 is greater than 2, it lies inside the range and prints true in the screen.

However, it has a lower bound value (2), so range.contains(1) returns false .

Things to remember

  • Starten til et område må være mindre enn eller lik slutten. I vårt eksempel (lowerBound… upperBound)må den nedre grenseverdien være mindre enn den øvre grenseverdien. Det kan imidlertid være en negativ verdi.
    Eksempel:
    3… 1 // dødelig feil: Kan ikke danne Range med upperBound <lowerBound -3… 1 // Dette er et gyldig område. Nedre / Overgående kan inneholde en negativ verdi, men bør gyldig utsagnet ovenfor.
  • Vi kan iterere over rekkevidde (unntatt ensidig rekkevidde) ved hjelp av for-in-løkker.
  • Vi kan også bruke rekkeviddeoperatør for å få tilgang til elementer i en matrise.

Interessante artikler...