GO FURTHER, FASTER: Try the Swift Career Accelerator today! >>

Operatori

Operatorii sunt acele mici simboluri pe care le-am învățat la școală în orele de matematică: + pentru adunare, - pentru scădere, * pentru înmulțire, / pentru împărțire, = pentru a atribui o valoare, și așa mai departe. Putem găsi toti acești operatori și în Swift, împreună cu încă câțiva.

Să încercăm ceva de bază – te rog adaugă asta în playground:

var a = 10
a = a + 1
a = a - 1
a = a * a

În panoul de rezultate vom vedea 10, 11, 10 și respectiv 100. Acum să încercăm asta:

var b = 10
b += 10
b -= 10

+= este un operator care înseamnă "adaugă și apoi artibuie". În cazul nostru înseamnă "ia valoarea curentă a lui b, adun-o cu 10, apoi pune rezultatul înapoi în b". După cum îți poți imagina, -= face același lucru doar că scade în loc să adune. Deci, codul de mai sus va arăta 10, 20, 10 în panoul de rezultate.

Câțiva dintre acești operatori pot fi aplicați și altor tipuri de date. După cum iți poți imagina, putem aduna două numere de tip double astfel:

var a = 1.1
var b = 2.2
var c = a + b

Când vine vorba de șiruri, + le va alătura. De exemplu:

var name1 = "Tim McGraw"
var name2 = "Romeo"
var both = name1 + " and " + name2

Asta va arăta "Tim McGraw and Romeo" în panoul de rezultate.

Un alt operator comun pe care îl vom întâlnii se numeste "modulus" (modulo) și îl putem scrie folosind simbolul procent: %. Înseamnă "împarte numărul din stânga la numărul din dreapta, și dă-ne restul împărțirii". Deci, 9 % 3 întoarce 0 deoarece 9 este divizibil cu 3, în timp ce 10 % 3 întoarce 1, deoarece 10 se împarte la 3 de trei ori, cu restul 1.

Notă: Dacă ai cumpărat "Hacking with Swift" și folosești cartea ghid exclusivă care însoțește cursul, atunci vei vedea că operatorul modulus va deveni folositor mai târziu.

Operatori de comparație

Swift are un set de operatori care execută coparații între valori. De exemplu:

var a = 1.1
var b = 2.2
var c = a + b

c > 3
c >= 3
c > 4
c < 4

Mai sus putem vedea operatorii: mai mare (>), mai mare sau egal (>=) și mai mic (<). În panoul de rezultate vom vedea true, true, false, true – acestea sunt valori Bool, pentru că răspunsul la fiecare dintre aceste operații nu poate să fie decât adevărat sau fals.

Dacă vrem să verificăm egalitatea nu putem folosi = deoarece deja are un scop: e folosit pentru a artibui o valoare unei variabile. Așadar Swift ne oferă o alternativă: ==, care înseamnă "este egal cu". De exemplu:

var name = "Tim McGraw"
name == "Tim McGraw"

Asta va arăta true în panoul de rezultate. Un lucru care ar putea să te dea peste cap este că în Swift șirurile sunt case-sensitive (diferențiază literele mari și mici), ceea ce înseamnă că "Tim McGraw", "TIM MCGRAW" și "TiM mCgRaW" sunt considerate ca fiind diferite. Dacă folosim == pentru a compara două șiruri, trebuie să ne asigurăm că au aceleași tip de litere (mari sau mici).

Există un ultim operator pe care vreau să ți-l introduc, operatorul "not": !. Da, este doar un semn al exclamării. Acesta face ca o instrucțiune să însemne opusul ei. De exemplu:

var stayOutTooLate = true
stayOutTooLate
!stayOutTooLate

Asta va printa true, true, false – ultima valoare este opusul true-ului anterior.

De asemenea, putem folosi ! cu = pentru a face != sau "diferit de". De exemplu:

var name = "Tim McGraw"
name == "Tim McGraw"
name != "Tim McGraw"
Go further, faster with the Swift Career Accelerator.

GO FURTHER, FASTER Unleash your full potential as a Swift developer with the all-new Swift Career Accelerator: the most comprehensive, career-transforming learning resource ever created for iOS development. Whether you’re just starting out, looking to land your first job, or aiming to become a lead developer, this program offers everything you need to level up – from mastering Swift’s latest features to conquering interview questions and building robust portfolios.

Learn more here

Sponsor Hacking with Swift and reach the world's largest Swift community!

BUY OUR BOOKS
Buy Pro Swift Buy Pro SwiftUI Buy Swift Design Patterns Buy Testing Swift Buy Hacking with iOS Buy Swift Interview Challenges Buy Swift on Sundays Volume One Buy Server-Side Swift Buy Hacking with watchOS Buy Hacking with tvOS Buy Hacking with macOS Buy Dive Into SpriteKit Buy Swift in Sixty Seconds Buy Objective-C for Swift Developers Buy Beyond Code

Was this page useful? Let us know!

 
Unknown user

You are not logged in

Log in or create account
 

Link copied to your pasteboard.