Benvenuti
Swift offre un ricco insieme di tipi numerici incorporati, un tipo booleano e un tipo Character per rappresentare singoli scalari Unicode. Esaminiamoli uno alla volta.
Tipi interi
Swift fornisce interi con segno e senza segno di diverse larghezze in bit:
```swift
let a: Int = -42 // platform width (64-bit)
let b: Int8 = 127
let c: UInt = 255
let d: UInt8 = 200
```
Utilizzi `Int` per gli interi generici; ricorra ai tipi di dimensione specifica quando è importante la disposizione in memoria.
Int.min e Int.max
Ogni tipo intero espone i propri limiti:
```swift
print(Int.min) // -9223372036854775808 on 64-bit
print(Int.max) // 9223372036854775807
print(UInt8.max) // 255
```
Superare questi limiti genera un errore a runtime (utilizzi gli operatori di overflow &+, &- per un overflow intenzionale).
Virgola mobile: Double e Float
```swift
let pi: Double = 3.14159265358979 // 64-bit, ~15 decimal digits
let e: Float = 2.71828 // 32-bit, ~6 decimal digits
```
Preferisca `Double` per la maggior parte delle attività. Usi `Float` solo quando la memoria occupata è fondamentale (ad esempio, per grandi array di valori).
Operatori aritmetici
Swift supporta i consueti operatori aritmetici:
```swift
let sum = 10 + 3 // 13
let diff = 10 - 3 // 7
let prod = 10 * 3 // 30
let quot = 10 / 3 // 3 (integer division)
let rem = 10 % 3 // 1
```
Ricordi: la divisione tra due `Int` tronca il risultato verso zero.
Tipo booleano: true e false
```swift
var isLoggedIn: Bool = false
isLoggedIn = true
if isLoggedIn {
print("Welcome back!")
}
```
I valori booleani di Swift sono rigidi: non può usare interi come valori truthy o falsy, come in C.
Operatori booleani
I tre operatori booleani fondamentali:
```swift
let a = true && false // AND → false
let b = true || false // OR → true
let c = !true // NOT → false
```
Valutazione con cortocircuito: in `&&`, il lato destro viene valutato solo se quello sinistro è `true`.
Tipo Character
Un `Character` contiene un singolo cluster di grafemi esteso (un carattere leggibile dall'utente):
```swift
let letter: Character = "A"
let emoji: Character = "🚀"
let accented: Character = "é"
```
I letterali di tipo Character usano le virgolette doppie, proprio come String.
Caratteri e stringhe
Una `String` è una sequenza di valori `Character`:
```swift
let str = "Hello"
for ch in str {
print(ch) // H, e, l, l, o
}
```
Può creare una String a partire da Character con `String(character)` oppure aggiungendo elementi a una variabile String.
Operatori di overflow numerico
Quando ha bisogno di un overflow intenzionale, ad esempio per la manipolazione dei bit a livello hardware, usi gli operatori di overflow:
```swift
var x: UInt8 = 255
x = x &+ 1 // wraps to 0 instead of crashing
```
Gli operatori `&+`, `&-`, `&*` non causano mai un trap in caso di overflow.
Verifica rapida
Quale operatore booleano Swift restituisce `true` solo quando **entrambi** gli operandi sono `true`?
Riepilogo
Punti chiave:
• Interi: `Int` per l'uso generale, tipi di dimensione fissa (`Int8`, `UInt8`…) quando necessario
• Numeri in virgola mobile: `Double` (64 bit) come scelta preferita; `Float` (32 bit) per gli array in cui lo spazio è importante
• `Bool` è rigido: solo `true`/`false`, senza conversione automatica da interi
• `Character` contiene un cluster di grafemi Unicode
• Usi `&+`, `&-`, `&*` per gestire intenzionalmente l'overflow
Prossimo argomento: stringhe e interpolazione.
Domande Frequenti
La lezione «Numeri, valori booleani e caratteri» è gratuita?
Sì — il testo completo di «Numeri, valori booleani e caratteri» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Swift Academy, passa a CoddyKit PRO. Il corso Swift Academy include 4 lezioni in totale.
Cosa imparerò in «Numeri, valori booleani e caratteri»?
Lavori con i tipi Int, Double, Float, Bool e Character. Eserciti Swift Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Swift Academy?
Non è richiesta alcuna esperienza precedente. Swift Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Numeri, valori booleani e caratteri»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Swift Academy?
Sì. Ogni lezione Swift Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.