Greiti kintamieji, konstantos ir literalai (su geriausia praktika)

Šiame straipsnyje sužinosite apie kintamuosius, konstantas, pažodžius ir jų naudojimo atvejus programuojant „Swift“.

Kas yra kintamasis?

Programuojant kintamieji naudojami duomenims saugoti atmintyje, kuriuos galima naudoti visoje programoje. Kiekvienam kintamajam turi būti suteiktas unikalus pavadinimas, vadinamas identifikatoriumi. Naudinga galvoti apie kintamuosius kaip apie talpyklas, kuriose laikoma informacija, kurią vėliau galima pakeisti.

Netechniniu požiūriu, jūs galite galvoti apie kintamąjį kaip apie krepšį, kuriame galite laikyti kai kurias knygas, o vėliau tas knygas galima pakeisti kitomis.

Kaip deklaruoti kintamuosius „Swift“?

Programoje „Swift “ kintamojo deklaravimui naudojame raktinį žodį var .

Pavyzdys:

 var siteName: String print (siteName) 

Mes paskelbėme kintamąjį pavadinimu siteName String, o tai reiškia, kad jame gali būti tik eilutės reikšmės. Norėdami sužinoti daugiau apie stygas, apsilankykite „Swift Strings“.

Jei bandysite paleisti pirmiau nurodytą kodą žaidimų aikštelėje, tai suteiks mums kompiliavimo laiko klaidą (kintamasis naudojamas prieš inicializuojant), nes jame nėra jokių reikšmių.

Kaip priskirti „Swift“ kintamajam vertę?

Galite priskirti kintamojo vertę naudodami priskyrimo operatorių (=).

1 pavyzdys: Kintamojo vertės deklaravimas ir priskyrimas

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

ARBA

Taip pat galite priskirti vertę tiesiogine forma kaip

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

Kai paleisite programą, išvestis bus:

 Apple.com

Dabar kintamajame siteName yra reikšmė „Apple.com“.

Kadangi „Swift“ yra tariama tipo kalba, ji gali automatiškai padaryti išvadą (žinoti) „Apple.com“ yra Stringir „siteName“ paskelbti kaip String. Taigi, jūs netgi galite pašalinti tipą (:String)iš deklaracijos kaip:

2 pavyzdys: įveskite numanomą kintamąjį „Swift“

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

Kai paleisite programą, išvestis bus:

 Apple.com

Kadangi „siteName“ yra kintamasis, taip pat galite pakeisti jo vertę paprasčiausiai naudodami priskyrimo operatorių, bet be varraktinio žodžio:

3 pavyzdys: kintamojo vertės keitimas

 var siteName = "Apple.com" // Assigning a new value to siteName siteName = "Programiz.com" print(siteName) 

Kai paleisite programą, išvestis bus:

 Programiz.com

Kas yra konstanta?

Konstantas yra specialus kintamojo tipas, kurio vertės pakeisti negalima. Naudinga manyti, kad konstantos yra konteineriai, kuriuose laikoma informacija, kurios vėliau negalima pakeisti.

Netechniniu požiūriu, jūs galite galvoti apie nuolatinį daiktą kaip apie krepšį knygoms laikyti, ir tų knygų negalima pakeisti įdėjus į krepšį.

How to declare a constant in Swift?

In Swift, we use let keyword to declare a variable.

Example:

 let siteName:String print(siteName)

We have declared a constant named siteName of type String.

If you try to run the above code, it will gives us compile time error (constant used before initialized) because it does not contain/hold any value.

How to assign value to a constant in Swift?

You can assign the value in a constant same as variable using the assignment operator (=).

Example 4: Declaring and assigning a value to a constant

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

OR

You can also assign the value inline as

 let siteName:String = "Apple.com"

When you run the program, the output will be:

 Apple.com

Now the constant siteName contains/holds value "Apple.com".

Like variables, you can remove the type (:String) from declaration as:

Example 5: Type inferred constant in Swift

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

When you run the program, the output will be:

 Apple.com

But unlike variables, you cannot change the value of constants. So, you cannot do something as

Example 6: Changing the value of constants (Not allowed)

 let siteName = "Apple.com" siteName = "Programiz.com" //compile time error print(siteName) 

Above statement gives us an error because as we said the value of a constant cannot be changed once data is stored. This is the key difference between a variable and constant.

What is a Literal?

A literal is a value that appears directly in your source code. It can be a number, character, or a string etc. For e.g: "Hello, World" , 12, 23.0, "C" are simple example of literals. Literals are often used to initialize (assign values to) variables or constants.

For example:

 let siteName = "Apple.com"

In the above expression siteName is a variable, and "Apple.com" is a literal.

Types of literals in Swift

Integer literals

It represents a decimal, binary, octal, or hexadecimal value. It has four types.

  • Binary Literals
    • Represents binary value.
    • Begins with 0b.
  • Octal Literals
    • Represents octal value.
    • Begins with 0o.
  • Hexadecimal Literals
    • Represents hexadecimal value.
    • Begins with 0x.
  • Decimal Literals
    • Represents decimal value.
    • Begins with nothing. Everything you declare in integer literal is of type decimal.

Example 7: How to use an integer literal in Swift?

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

When you run the program, the output will be:

 255 1231

In the above program, there are two integer literals 0b11111111 (binary literal) and 1231 (decimal literal). The decimal value of 11111111 is 255, therefore the print(binaryNumber) statement outputs 255 in the screen.

Similarly print(1231) outputs decimal value 255 in the console.

String & Character literals

A string literal is a sequence of characters surrounded by double quotes and a character literal is a single character surrounded by double quotes.

Example 8: How to use string and character literal in Swift?

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

In the above program "C" is a character literal and "Swift is awesome" is a string literal.

Floating point literals

It is used to initialize variables of data type float and double. It can be of two types:

Decimal:

It can have an optional exponent, indicated by an uppercase or lowercase e. For decimal numbers with an exponent of exp, the base number is multiplied by 10exp:

Example 9: How to use decimal literals in Swift?

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

When you run the program, the output will be:

 12.23 314.0

In the above program 12.23 and 3.14e2 are floating point literals. 3.14e2 is expressed with exponential and is equivalent to 3.14 * 102.

Hexadecimal:

Hexadecimal floats must have an exponent, indicated by an uppercase or lowercase p.For hexadecimal numbers with an exponent of exp, the base number is multiplied by 2exp:

Example 10: How to use hexadecimal literals in Swift?

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

When you run the program, the output will be:

 15360.0 0.003662109375 

In the above program 0xFp10 and 0xFp-12 are floating point literals. 0xFp10 is expressed with exponential and equivalent to 15*210 (F is represented as 15 in decimal). Therefore, print(someFloat) outputs 15360.0 in the screen.

Likewise, 0xFp-12 is equivalent to 15 * 2-12. Therefore, print(someAnotherFloat) outputs 0.003662109375 in the screen.

Boolean Literals

There are two boolean literals in swift. They are true and false..

Example 11: How to use Boolean literals in Swift?

 let result:Bool = false

In the above program, false is a Boolean literal which is assigned to the constant result.

Rules and Best practices for variables and constants

  1. Choose a name that makes sense. For example, var name makes more sense than var n.
  2. Use camelCase notation to declare a variable or a constant. Camel-case notation starts with lowercase letter. For example:
     var studentName let studentAge let address 
  3. You can also define variables and constants without labeling it. Not labeling with name means you are not going to use it in the program. There are many cases where you want to create a unused variable. In that case you can use _ placeholder as:
     var _ = "Apple.com"//string initialized but not stored in a variable let _ = "Apple.com"
    Or even this is valid
     _ = "Apple.com"
  4. Use constants if you only need to set a value once and never need to change it again during a program. However, if you do need to change it at a later point, use variables.
  5. Nuolatiniuose ir kintamuosiuose pavadinimuose negali būti tarpų, matematinių simbolių, rodyklių, asmeninio naudojimo (arba netinkamų) „Unicode“ kodo taškų arba linijų ir langelių piešimo simbolių. Jie taip pat negali prasidėti skaičiumi, nors skaičiai gali būti įtraukti kitur pavadinime.
    Pavyzdys:
     var 12 = "Apple.com" // pateikia kompiliavimo klaidą: laukiama schema var @hello = "Hello" // pateikia kompiliavimo klaidą: laukiama schema 

Įdomios straipsniai...