Типы данных Swift
Когда мы используем любой язык программирования программирования, вам нужно использовать различные типы данных для хранения различной информации.
Тип данных переменной определяет, как бит памяти эти значения в памяти компьютера. Можно также указать тип данных при объявлении переменной.
Все переменные имеют тип данных, чтобы определить, какие данные могут быть сохранены.
Встроенные типы данных
Swift обеспечивает очень богатые типы данных, вот несколько часто используемых типов данных:
Int
Как правило, вам не нужно конкретно указанной длины целых чисел. Swift предоставляет специальный целого типа Int
, длина оригинального словаря и той же текущей длины платформы:
- На 32-битных платформах,
Int
иInt32
одинаковой длины. - На 64-битных платформах,
Int
иInt64
одинаковой длины.
Если вам нужно иметь определенную длину целое, в общем использовании Int
достаточно. Это может улучшить согласованность и повторное использование кода. Даже на 32-битных платформах, Int
число диапазона , которые могут быть сохранены может быть достигнуто -2,147,483,648
~ 2,147,483,647
, большую часть времени это уже достаточно большой.
UInt
Swift также предлагает специальный тип без знака UInt
, длина оригинального словаря и той же текущей длины платформы:
- На 32-битных платформах,
UInt
иUInt32
одинаковой длины. - На 64-битных платформах,
UInt
иUInt64
одинаковой длины.
Примечание:
Старайтесь не использоватьUInt
, если вам действительно не нужно хранить текущую платформу и оригинальный словарный запас той же длины целого числа без знака. В дополнение к этому, предпочтительно использоватьInt
, даже если вы хотите , чтобы сохранить значение известного неотрицательным. Унифицированная использованиеInt
может улучшить повторное использование кода, чтобы избежать преобразования между различными типами цифровых и цифрового вывода типа соответствия, относятся к типу безопасности и типа логического вывода .
терка
Float представляет собой число с десятичной части, такие как 3.14159
, 0.1
и -273.15
.
Шире , чем тип представления с плавающей точкой целого типа , который может хранить более Int
больших или меньших чисел типа. Swift предлагает два знакового типа с плавающей точкой:
-
Double
представляют собой 64-бит с плавающей точкой. Когда вам нужно хранить большой или очень высокой точности с плавающей запятой, пожалуйста, используйте этот тип. -
Float
представляет собой 32-битное число с плавающей точкой. Меньшая точность, то мы можем использовать этот тип.
Примечание:
Double
точность очень высокая, по меньшей мере , 15 цифр,Float
произошло только шесть цифр. Выберите диапазон значений в зависимости от типа ваш код необходимо решить.
Логическое значение
Swift имеет тип базовый логический (Boolean), называемый Bool. Логическое значение относится к логическое значение, потому что они могут быть только истинным или ложным. Swift имеет два булеву константу, истинные и ложные.
строка
Строка представляет собой набор последовательностей символов, таких как:
"Hello, World!"
характер
Характер относится к одной буквы, например:
"C"
Дополнительный тип
Используйте дополнительный тип (ДОПОЛНИТЕЛЬНО), чтобы обработать случай может быть пропущенные значения. Дополнительный тип представляет значение или значения.диапазон значений
В следующей таблице приведены минимальные и максимальное пространство для хранения различных типов переменных памяти и типов переменных:
тип | Размер (байт) | Значение интервала |
---|---|---|
iNT8 | 1 байт | От -127 до 127 |
uint8 | 1 байт | 0-255 |
Int32 | 4 байта | -2147483648 До 2147483647 |
UInt32 | 4 байта | 0-4294967295 |
Int64 | 8 байт | -9223372036854775808 Для 9223372036854775807 |
UInt64 | 8 байт | 0-18446744073709551615 |
терка | 4 байта | 1.2E-38 до 3.4E + 38 (~ 6 цифр) |
двойной | 8 байт | 2.3E-308 до 1.7E + 308 (~ 15 цифр) |
Тип псевдонима
Введите псевдоним для данного типа определяет другое имя, введите псевдоним, определенные с помощью ключевого слова typealias. Синтаксис выглядит следующим образом:
typealias newname = type
Следующий пример определяет Int псевдоним типа ноги:
typealias Feet = Int
Теперь мы можем определить переменную псевдоним:
import Cocoa typealias Feet = Int var distance: Feet = 100 print(distance)
Мы используем игровой площадке выше программы, выход:
100
Тип безопасности
Swift является одним из видов безопасности (безопасный тип) языка.
Потому что Свифт типобезопасного, так что это будет тип проверки (проверки типа) при компиляции кода, и не совпадает с типом знака как ошибка. Это позволяет находить и исправлять ошибки на ранних стадиях развития времени.
import Cocoa var varA = 42 varA = "This is hello" print(varA)
Вышеуказанная процедура будет дано в Xcode:
error: cannot assign value of type 'String' to type 'Int' varA = "This is hello"
Значение не может быть 'Строка' строка присваивается переменной 'Int'.
Тип вывода
Когда вам приходится иметь дело с различными типами значений, проверка типов может помочь вам избежать ошибок. Тем не менее, это не означает, что каждый раз, когда вы объявляете константы и переменные должны явно указать тип.
Если вы явно не указать тип, Swift использует определение типа (тип логического вывода), чтобы выбрать соответствующий тип.
Например, если вы даете новые постоянные значения 42 и не указывает на тип, Swift можно сделать вывод постоянного типа Int, потому что начальное значение вы назначаете его выглядит как целое:
let meaningOfLife = 42 // meaningOfLife 会被推测为 Int 类型
Точно так же, если вы не должны указывать тип с плавающей запятой литералов, Swift будет сделать вывод, что вы хотите, Double:
let pi = 3.14159 // pi 会被推测为 Double 类型
Когда логический вывод типа с плавающей точкой, Swift всегда будет выбирать вместо Double Float.
Если же выражение в виде целого числа и с плавающей точкой, будет выведено двойной тип:
let anotherPi = 3 + 0.14159 // anotherPi 会被推测为 Double 类型
Исходное значение 3 в явном виде не объявить тип, и выражение есть вещественный литерал, выражение, будет считаться двойной типа.
примеров
import Cocoa // varA 会被推测为 Int 类型 var varA = 42 print(varA) // varB 会被推测为 Double 类型 var varB = 3.14159 print(varB) // varC 也会被推测为 Double 类型 var varC = 3 + 0.14159 print(varC)
Реализация указанного выше кода, выход:
42 3.14159 3.14159