English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Swift变量,常量和字面量

In questo articolo, imparerete le variabili, le costanti, i literal e gli esempi in Swift programming.

Cos'è una variabile?

In programmazione, le variabili vengono usate per memorizzare dati nella memoria, che possono essere utilizzati in tutto il programma. Ma ogni variabile deve avere un nome unico, chiamatoidentifier(Identificatore). Una variabile può essere vista come un contenitore di informazioni che può essere modificato in futuro.

In termini tecnici, potete considerare una variabile come un sacco di libri che conservate per un sacco di borse, e in futuro potete sostituire questi libri con altri libri.

Come dichiarare una variabile in Swift?

In Swift, usiamovarLa dichiarazione di una variabile con una parola chiave.

var siteName: String
print(siteName)

Abbiamo dichiarato una variabile di tipo String chiamata siteName, il che significa che può salvare solo valori di stringa. AccessoStringhe SwiftPotete trovare ulteriori informazioni sulle stringhe.

Se cercate di eseguire il codice sopra nel Playground, ci porterà degli errori di compilazione (l'uso di variabili prima dell'inizializzazione), perché non contiene/contiene alcun valore.

Come assegnare valori alle variabili in Swift?

È possibile utilizzareOperatore di assegnazionein assegnazione (=).

Esempio 1: Dichiarare e assegnare un valore a una variabile

var siteName: String
siteName = "Apple.com"
print(siteName)

O

È anche possibile assegnare il valore inline come:

var siteName: String = "Apple.com"
print(siteName)

Esegui il programma e l'output sarà:

Apple.com

La variabile siteName contiene ora il valore “Apple.com”.

Poiché Swift è un linguaggio di inferenza di tipo, può automaticamente inferire (saper) che “Apple.com” è una stringa e dichiarare siteName come tipo String. Pertanto, è possibile anche rimuovere il tipo (:String) dalla dichiarazione:

Esempio 2: Variabili con inferenza di tipo in Swift

var siteName = "Apple.com"
print(siteName)

Esegui il programma e l'output sarà:

Apple.com

Poiché siteName è una variabile, è possibile anche modificare il suo valore semplicemente utilizzando l'operatore di assegnazione (=) senza utilizzare la parola chiave var, ad esempio:

Esempio 3: Modificare il valore di una variabile

var siteName = "Apple.com" 
// Assegnare un nuovo valore a siteName
siteName = "oldtoolbag.com"
print(siteName)

Esegui il programma e l'output sarà:

oldtoolbag.com

Cos'è una costante?

Le costanti sono un tipo speciale di variabile, il cui valore non può essere modificato. Considerate le costanti come contenitori di informazioni che non possono essere modificate in seguito.

In termini tecnici, si può considerare una costante come una borsa per conservare alcuni libri, e una volta messi i libri nella borsa, non è possibile sostituirli.

Come dichiarare costanti in Swift?

In Swift, utilizziamo la parola chiave let per dichiarare variabili.

let siteName: String
print(siteName)

Abbiamo già dichiarato una costante stringa chiamata siteName.

Se cercate di eseguire il codice sopra, ci porterebbe un errore di compilazione (utilizzo della costante prima dell'inizializzazione) perché non contiene / mantiene alcun valore.

Come assegnare valori alle costanti in Swift?

È possibile utilizzare l'operatore di assegnazione (=) per assegnare valori alle variabili nello stesso modo:Costantein assegnazione.

Esempio 4: Dichiarare un valore e assegnarlo a una costante

let siteName: String
siteName = "Apple.com"
print(siteName)

O

Oppure, è possibile specificare il valore inline come

let siteName: String = "Apple.com"

Esegui il programma e l'output sarà:

Apple.com

Ora, la costante siteName contiene / detiene un valore di “Apple.com”.

Come per le variabili, è possibile rimuovere il tipo (:String) dalla dichiarazione, come segue:

Esempio 5: Costanti con inferenza di tipo in Swift

let siteName = "Apple.com"
print(siteName)

Esegui il programma e l'output sarà:

Apple.com

Ma differenza dalle variabili, non è possibile modificare il valore di una costante. Pertanto, non è possibile fare così:

Esempio 6: Modificare il valore di una costante (non permesso)

let siteName = "Apple.com"
siteName = "oldtoolbag.com" // errore di tempo di compilazione
print(siteName)

La frase sopra ci dà un errore perché, come abbiamo detto, una volta memorizzati i dati, il valore delle costanti non può essere modificato. Questa è la differenza chiave tra variabili e costanti.

Cos'è un litterale?

I litterali sono valori che appaiono direttamente nel codice sorgente. Possono essere numeri, caratteri o stringhe, ad esempio: “Hello, World”, 12, 23.0, “C” è un esempio semplice di litterale. I litterali sono spesso utilizzati per inizializzare variabili o costanti (assegnando loro valori).

Ad esempio:

let siteName = "Apple.com"

Nell'espressione sopra, siteName è una variabile e "Apple.com" è un litterale.

Tipi di litterale in Swift

Litterali numerici

Rappresenta valori decimali, binari, ottali o esadecimali. Ha quattro tipi.

  • Litterale binario

    • Rappresenta il valore binario.

    • Inizia con 0b.

  • Litterale ottale

    • Rappresenta il valore ottale.

    • Inizia con 0o.

  • Litterale esadecimale

    • Rappresenta il valore esadecimale.

    • Inizia con 0x.

  • Litterale a virgola mobile

    • Rappresenta il valore decimale.

    • Si parte da zero. Tutto ciò che dichiari nei litterali numerici è di tipo decimale.

Esempio 7: Come utilizzare i litterali numerici in Swift?

let binaryNumber = 0b11111111
print(binaryNumber)
print(1231)

Esegui il programma e l'output sarà:

255
1231

Nel programma sopra ci sono due litterali numerici 0b11111111 (litterale binario) e 1231 (litterale decimale). Il valore decimale di 11111111 è 255Pertanto, la frase print(binaryNumber) viene visualizzata 255 sullo schermo.

Analogamente, print(1231) esce il valore decimale nel terminale 255.

Litterali di stringa e carattere

I litterali di stringa sono sequenze di caratteri racchiusi tra virgolette doppie, mentre i litterali di carattere sono singoli caratteri racchiusi tra virgolette doppie.

Esempio 8: Come utilizzare i litterali di stringa e carattere in Swift?

let someCharacter: Character = "C"
let someString: String = "Swift is awesome"

Nel programma sopra, "C" è un litterale di carattere, "Swift is awesome" è un litterale di stringa.

Litterale a virgola mobile

Utilizzato per inizializzare le variabili di tipo float e double. Può avere due tipi:

Decimale:

Può avere un esponente opzionale rappresentato da una lettera maiuscola o minuscola e. Per i numeri decimali con l'esponente exp, il basamento viene moltiplicato per 10 exp:

Esempio 9: Come utilizzare i literal decimali in Swift?

let someFloat = 12.23
let someAnotherFloat = 3.14e2 
print(someFloat)
print(someAnotherFloat)

Esegui il programma e l'output sarà:

12.23
314.0

Nel programma sopra, 12.23, 3.14e2 sono literal a virgola mobile. 3.14e2 è espresso in esponenziale e corrisponde a3.14 * 10 2.

Esadecimale:

I numeri a virgola mobile esadecimali devono avere un esponente rappresentato da una lettera maiuscola o minuscola p. Per i numeri esadecimali con l'esponente exp, il basamento viene moltiplicato per 2. exp:

Esempio 10: Come utilizzare i literal esadecimali in Swift?

let someFloat = 0xFp10 
let someAnotherFloat = 0xFp-12
print(someFloat)
print(someAnotherFloat)

Esegui il programma e l'output sarà:

15360.0
0.003662109375

Nel programma sopra, 0xFp10, 0xFp-12 sono literal a virgola mobile. 0xFp10 è espresso in esponenziale e corrisponde a 15 * 2^10 (F rappresenta il 15 in decimale). Pertanto, print(someFloat) visualizza 15360.0 sullo schermo.

Analogamente, 0xFp-12 è equivalente a 15 * 2-12. Pertanto, print(someAnotherFloat) visualizza 0.003662109375 sullo schermo.

Literal booleani

In Swift ci sono due literal booleani. Essi sono rispettivamente true e false.。

Esempio 11: Come utilizzare i literal booleani in Swift?

let result:Bool = false

Nel programma sopra, false è una costante booleana assegnata alla costante result.

Regole e best practice per variabili e costanti

  1. Scegli un nome significativo. Ad esempio:var name Più var n Più significativo.

  2. Utilizza la notazione camelCase per dichiarare variabili o costanti. La notazione a cammello inizia con lettere minuscole. Ad esempio:

    var studentName
    let studentAge
    let address
  3. È anche possibile definire variabili e costanti senza doverle marcare. Non utilizzare i tag di nome significa che non li userai nel programma. In molti casi, vorrai creare una variabile non utilizzata. In questo caso, puoi utilizzare il segnaposto _.

    var _ = "Apple.com" //字符串已初始化,但未存储在变量中
    let _ = "Apple.com"

                甚至这也是有效的

    _ = "Apple.com"
  4. 如果只需要设置一次值,而无需在程序中再次更改它,则使用常量。但是,如果以后需要更改它,请使用变量。

  5. 常量和变量名不能包含空格字符、数学符号、箭头、私用(或无效) Unicode 代码点或线条和框图字符。它们也不能以数字开头,尽管数字可能包含在名称的其他地方。

    var 12 = "Apple.com" //产生编译错误:期望模式
    var @hello = “Hello” //产生编译错误:期望模式