Områder i Swift (med eksempler)

I denne artikel lærer du om rækkevidde, dens type og brugssager i Swift.

Et interval er et interval af værdier. Et simpelt eksempel på interval er 0,1,2,3,4,5,6,7,8,9 fordi tallene er sekventielle fra 0 til 9.

Vi kan oprette rækkevidde hurtigt ved hjælp af to rækkeoperatorer beskrevet nedenfor:

1. Lukket rækkeoperatør (nedre grænse … øvre grænse)

Det inkluderer alle værdierne i intervallet (nedre til øverste bund). Det erklæres ved hjælp af (3 prikker) operator.

F.eks .: 1… 3 Definerer område, der indeholder værdier 1,2,3

2. Operatør med halv åben rækkevidde (nedre grænse …

Det inkluderer alle værdierne i intervallet (nedre til øvre grænse), men ekskluderer det sidste (øvre grænse) nummer. Det erklæres ved hjælp af … <operatør.

F.eks .: 1… <3 Definerer område, der indeholder værdierne 1 og 2

Typer af rækkevidde

1. Lukket rækkevidde (lowerBound … upperBound)

Områder, der oprettes ved hjælp af lukket område-operatør, kaldes lukket område. Det inkluderer alle værdier fra nedre til øvre.

Eksempel 1: Udskrivning af lukkede værdier ved hjælp af for-in-loop

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

Når du kører programmet, vil output være:

 1 2 3 

Ovenstående eksempel opretter et interval, der indeholder tal fra 1 til 3 ( 1… 3). Vi brugte en in-loop til at se, hvilke værdier området indeholder. Hvis du vil lære mere om in-loops, skal du besøge Swift in-loop.

Ved hjælp af in-loop kan vi se, at lukket område indeholder alle værdier i det givne interval inklusive de nedre (1) og øvre (3) grænseværdier.

2. Halv åben rækkevidde (nedre grænse …

Områder oprettet ved hjælp af operatoren med halvt åbent område kaldes halvt åbne områder. Det inkluderer alle værdier fra nedre til øvre grænse, men ekskluderer den øvre grænse.

Eksempel 2: Udskrivning af halve åbne intervalværdier ved hjælp af in-loop

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

Når du kører programmet, vil output være:

 1 2 

I ovenstående eksempel har vi brugt in-loop til at se, hvordan halvåbent rækkevidde fungerer.

I stedet for at udskrive alle værdierne kan vi tydeligt se, at man kun bruger halvåbent operator, der udskriver 1 og 2, og det udelukker den øvre grænse (dvs. 3).

3. Ensidet rækkevidde

Ensidet rækkevidde er de typer af rækkevidde, der fortsætter så vidt muligt i en retning. Det kan oprettes ved hjælp af både halvåbent operatør og lukket områdeoperatør, men operatøren kan kun have en værdi på den ene side.

Eksempel 3: Ensidet område mindre end 2

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

Når du kører programmet, vil output være:

 sandt falsk 

Ovenstående eksempel opretter et ensidet område ved hjælp af halvåbent operator, der indeholder tal mindre end to.

For at validere vores resultat har vi brugt contains metode. Den containsreturnerer metoden simpelthen truehvis elementet ligger inde i området ellers returnerer false.

range.contains(-1)kontrollerer, om -1 ligger inden for området eller ej. Da det er ensidet område med øvre grænse 2 og -1 <2 ligger det inden for området og print(range.contains(-1))output truepå skærmen.

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

  • Et områdes start skal være mindre end eller lig med slutningen. I vores eksempel (lowerBound… upperBound)skal den nedre grænse være mindre end den øvre grænse. Det kan dog være en negativ værdi.
    Eksempel:
    3… 1 // fatal fejl: Kan ikke danne Range med upperBound <lowerBound -3… 1 // Dette er et gyldigt interval. Nedre / Upperbound kan indeholde en negativ værdi, men skal gælde ovenstående udsagn.
  • Vi kan gentage over rækkevidde (ekskl. Ensidet rækkevidde) ved hjælp af in-loops.
  • Vi kan også bruge rækkeviddeoperatør til at få adgang til elementer i en matrix.

Interessante artikler...