English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этой статье вы узнаете о переменных, константах, литералах и их примерах в программировании Swift.
В программировании переменные используются для хранения данных в памяти, которые можно использовать в течение всего программы. Но каждой переменной необходимо дать уникальное имя, называемоеidentifier(Идентификатор). Переменные можно рассматривать как контейнеры для хранения информации, и впоследствии можно изменить эту информацию.
Технически, вы можете представить переменные как книги, которые хранятся в чемодане, и в будущем их можно заменить другими книгами.
В Swift мы используемvarКлючевое слово для объявления переменных.
var siteName: String print(siteName)
Мы объявили переменную типа String с именем siteNameType, что означает, что она может хранить только строковые значения. ДоступСтроки SwiftМожно узнать больше о строках.
Если вы пытаетесь запустить приведенный выше код в Playgrounds, это вызовет компиляционные ошибки (использование переменных до их инициализации), так как он не хранит/не содержит никаких значений.
Вы можете использоватьОператор присваивания(=) для присвоения значения переменной.
var siteName: String siteName = "Apple.com" print(siteName)
Или
Вы также можете inline присвоить этому значению:
var siteName: String = "Apple.com" print(siteName)
При выполнении этого программы вывод будет следующим:
Apple.com
Переменная siteName теперь содержит значение “Apple.com”.
Поскольку Swift — это язык с типом inference, он может автоматически infer (знать), что “Apple.com” — это строка и объявить siteName как тип String. Таким образом, вы даже можете удалить тип String из объявления, например:
var siteName = "Apple.com" print(siteName)
При выполнении этого программы вывод будет следующим:
Apple.com
Поскольку siteName — это переменная, вы также можете изменить ее значение, просто используя оператор присваивания (=), без использования ключевого слова var, например:
var siteName = "Apple.com" // Присвоить новому значению siteName siteName = "oldtoolbag.com" print(siteName)
При выполнении этого программы вывод будет следующим:
oldtoolbag.com
Константы — это особый тип переменных, значения которых не могут быть изменены. Представьте их как контейнеры для хранения информации, которую нельзя изменить в будущем.
Технически, вы можете представить константы как рюкзак для хранения некоторых книг, и как только вы положите книги в рюкзак, их невозможно заменить.
В Swift мы используем ключевое слово let для объявления переменных.
let siteName: String print(siteName)
Мы уже объявили константу строки siteName.
Если вы попытаетесь запустить этот код, он вызовет ошибку компиляции (использование константы до ее инициализации), так как он не содержит/сохраняет никакого значения.
Вы можете использовать оператор присваивания (=) в том же месте, что и с переменными.Константавнутри.
let siteName: String siteName = "Apple.com" print(siteName)
Или
También можно inline определить значение
let siteName: String = "Apple.com"
При выполнении этого программы вывод будет следующим:
Apple.com
Теперь константа siteName содержит/имеет значение “Apple.com”.
Как и переменные, вы можете удалить тип (:String) из объявления, например:
let siteName = "Apple.com" print(siteName)
При выполнении этого программы вывод будет следующим:
Apple.com
Но в отличие от переменных, вы не можете изменить значение константы. Поэтому, вы не можете так сделать:
let siteName = "Apple.com" siteName = "oldtoolbag.com" // ошибка времени компиляции print(siteName)
Приведенное выше предложение вызывает ошибку, потому что, как мы говорили, как только данные сохранены, значение константы нельзя изменить. Это ключевое различие между переменными и константами.
Литерал - это значение, которое напрямую出现在 исходном коде. Это может быть число, символ или строка и т.д. Например: "Hello, World", 12, 23.0, "C" является простым примером литерала. Литералы часто используются для инициализации переменных или констант (присвоение им значений).
Например:
let siteName = "Apple.com"
В выражении выше siteName является переменной, а "Apple.com" является литералом.
Он представляет десятичное, двоичное, восьмеричное или шестнадцатеричное значение. У него есть四种 типа.
Двоичный литерал
Представляет двоичное значение.
Начинается с 0b.
Восьмеричный литерал
Представляет восьмеричное значение.
Начинается с 0o.
Шестнадцатеричный литерал
Представляет шестнадцатеричное значение.
Начинается с 0x.
Малое числовое литерал
Представляет десятичное значение.
Начинается с нуля. Все, что вы объявляете в литералах целых чисел, является десятичным типом.
Пример 7: Как использовать литералы целых чисел в Swift?
let binaryNumber = 0b11111111 print(binaryNumber) print(1231)
При выполнении этого программы вывод будет следующим:
255 1231
В приведенном выше примере программы есть два литерала целых чисел 0b11111111 (бинарный литерал) и 1231 (десятичный литерал). Десятичное значение 11111111 равно 255Таким образом, команда print(binaryNumber) выводит на экран 255.
Аналогично, print(1231) выводит десятичное значение в консоли 255
Литералы строк и символов заключены в двойные кавычки, а литералы символов заключены в двойные кавычки.
Пример 8: Как использовать литералы строк и символов в Swift?
let someCharacter: Character = "C" let someString: String = "Swift is awesome"
В приведенном выше примере программы "C" является литералом символа, "Swift is awesome" является литералом строки.
Используется для инициализации переменных типа данных float и double. У него есть два типа:
Десятичное:
У него может быть опциональный индекс, представленный большой или маленькой e. Для десятичных чисел с индексом exp, база умножается на 10. exp:
Пример 9: Как использовать десятичные litterals в Swift?
let someFloat = 12.23 let someAnotherFloat = 3.14e2 print(someFloat) print(someAnotherFloat)
При выполнении этого программы вывод будет следующим:
12.23 314.0
В предыдущем примере 12.23, 3.14e2 - это litterals с плавающей запятой. 3.14e2 выражен в виде индекса, равен 314.0.3.14 * 10 2
Шестнадцатеричная:
Шестнадцатеричные litterals с плавающей запятой должны иметь индекс, представленный большой или маленькой п. Для шестнадцатеричных чисел с индексом exp,基数 умножается на 2. exp:
Пример 10: Как использовать шестнадцатеричные litterals в Swift?
let someFloat = 0xFp10 let someAnotherFloat = 0xFp-12 print(someFloat) print(someAnotherFloat)
При выполнении этого программы вывод будет следующим:
15360.0 0.003662109375
В предыдущем примере 0xFp10, 0xFp-12 - это litterals с плавающей запятой. 0xFp10 выражен в виде индекса, эквивалентен 15 * 2^10 (F означает 15 в десятичной системе счисления). Поэтому print(someFloat) выводит на экран 15360.0.
Таким образом, 0xFp-12 эквивалентен 15 * 2-12. Поэтому print(someAnotherFloat) выводит на экран 0.003662109375.
В Swift есть два логических litteral: true и false.
Пример 11: Как использовать логические litterals в Swift?
let result:Bool = false
В предыдущем примере false - это логическая константа, которая назначена константе result.
Выберите имя, которое имеет смысл. Например:var name 比 var n Это имеет больше смысла
Используйте запись camelCase для объявления переменных или констант. CamelCase начинается с маленькой буквы. Например:
var studentName let studentAge let address
Вы также можете определить переменные и константы, не помечая их. Не использование именных меток означает, что вы не будете использовать его в программе. В多くих случаях вы хотите создать переменную, которую не будете использовать. В этом случае вы можете использовать占位ник _.
var _ = "Apple.com" //строка инициализирована, но не хранится в переменной let _ = "Apple.com"
Даже это также эффективно
_ = "Apple.com"
Если вам нужно установить значение один раз и не нужно изменять его в программе, используйте константу. Но если в будущем вам нужно изменить её, пожалуйста, используйте переменную.
Имена констант и переменных не могут содержать пробельные символы, математические знаки, стрелки, частные (или недопустимые) Unicode символы или символы линии и рамки. Они также не могут начинаться с цифры, хотя цифры могут быть включены в имена в других местах.
var 12 = "Apple.com" //выдаёт ошибку компиляции: ожидается шаблон var @hello = "Hello" //выдаёт ошибку компиляции: ожидается шаблон