OPERATORI BASE

Un operatore è un simbolo speciale che puoi utilizzare per controllare, cambiare o combinare tra di loro alcuni valori. Per esempio, l’operatore di addizione (+) addiziona due numeri tra di loro (come in let i = 3 + 5). Un altro esempio più complesso è quello dell’operatore E (AND), rappresentato con il simbolo && e quello di incremente ++i, che serve ad incrementare il valore di i di 1.

Swift supporta gli operatori standard di C con alcuni accorgimenti atti ad evitare i più comuni errori di compilazione. L’operatore di assegnazione (=) non restituisce un valore, per prevenire che venga interpretato erroneamente come l’operatore di uguaglianza (==) . Gli operatori aritmetici (+, -, *, /, % ) intercettano e impediscono l’overflow dei dati, per evitare risultati inaspettati quando si lavora con numeri che diventano più grandi o più piccoli del range di valori approvati dal software che si sta compilando. In Swift si possono utilizzare anche numeri al di fuori del range previsto, utilizzando gli “overflow operators” che vedremo più avanti.

Diversamente da C, Swift consente di eseguire i calcoli in percentuale (%) su numeri a virgola mobile. Swift offre inoltre due operatori range (a.. B e a … b) che non si trovano in C

 

TERMINOLOGIE

Gli opetori sono unari, binari, or ternari:

Gli operatori unari, come suggerisci il nome, operano su target singoli (ad esempio -b). I prefissi unari si pongono subito prima del valore target (come !a), poi ci sono quelli che agiscono DOPO il valore target (come il suffisso i++).
Gli operatori binari operano con 2 valori (such as 2 + 3).
In fine ci sono quelli ternari che, come suggerisce la parola, operano su 3 valori. Come C, in swift c’è un solo operatore ternario (a ? b : c).
I valori su cui gli operatori vanno ad agire prendono il nome di operandi. Nell’espressione 2 + 5, il simbolo + è un operatore binario e i suoi operandi sono 2 e 5.

OPERATORI DI ASSEGNAZIONE
Gli operatori di assegnazione (a = b) inizializzano o aggiornano i valori di una variante, in questo caso b b:

let b = 13
var a = 6
a = b
// a is now equal to 13

Se il valore a destra dell’operatore è una tupla, i suoi elementi possono essere scomposti in più costanti o variabili:

let (x, y) = (1, 2)
// x is equal to 1, and y is equal to 2

Diversamente dagli operatori di assegnazione in C e Objective-C,  in Swift da soli non restituiscono un valore. L’esempio seguente non è valido:

if x = y {
// this is not valid, because x = y does not return a value
}

Questo scongiura l’errore di utilizzare (=) confondendolo con (==) cioè con un operatore di uguaglianza. Rendendo ad esempio x = y non valido, si evitano errori di compilazione

OPERATORI ARITMETICI

Swift supporta i 4 classici operatori aritmetici:

Addizione (+)
Sottrazione (-)
Moltiplicazione (*)
Divisione (/)

1 + 2 // uguale 3
5 – 3 // uguale 2
2 * 3 // uguale 6
10.0 / 2.5 // uguale 4.0

A differenza di C and Objective-C, gli operatori aritmetici in Swift,  per default, non consentono l’overflow. Puoi farlo utilizzando gli operatori di overflow (such as a &+ b) che vedremo nello specifico capitolo.

L’operatore di addizione può essere utilizzato anche per concatenare diverse stringhe:

“hello, ” + “world” // equals “hello, world”

Potete addizionare anche caratteri come ad esempio delle emoticon a delle stringhe:

let dog: Character = “emoticon”
let cow: Character = “emoticon”
let dogCow = dog + cow
// dogCow is equal to “emoticon

L’OPERATORE RESTO

L’operatore resto (a % b) restituisce il resto di un’operazione.

Ecco come questo operatore lavora. Per calcolare 9 % 4, devo prima calcolare quante volte il 4 è contenuto nel 9:

Il 9 può contenere 2 volte il 4, con resto 1.

In swift questo si può scrivere come:

9 % 4 // equals 1

Per determinare il risultato di a % b, l’operatore % calcola calcola la seguente equazione e restituisce il resto come output:

a = (b × multiplo) + resto

Dove multiplo è il più grande numero di volte che b può essere contenuto in a.

Ad esempio, inserendo 9 e 4:

9 = (4 × 2) + 1

Lo stesso metodo si applica per calcolare il resto con valori negativi:

-9 % 4 // equals -1

Inserting -9 and 4 into the equation yields:

-9 = (4 × -2) + -1

restituendo -1 come resto.

Continueremo nella parte 2 di 2 a breve!

VOLETE ESSERE AGGIORNATI TEMPESTIVAMENTE ALL’USCITA DI UN NUOVO CAPITOLO ? BASTA UN LIKE SULLA NOSTRA PAGINA FACEBOOK!