Swift имеет два типа данных (Double и Float) для хранения десятичных значений. Оба они содержат одинаковые значения десятичного типа, но имеют некоторые различия.
This post was originally posted at https://agrawalsuneet.github.io/blogs/double-vs-float-swift/ and reposted on Medium on 13th April 2022.
Основное различие заключается в размере памяти, которую они оба используют, в зависимости от которой варьируется их точность.
Давайте попробуем понять различия между ними на примере.
Количество цифр
- Тип Double используется для хранения значений в 17 местах. Он начинается с крайней левой стороны и уменьшает цифры с правой стороны значения, если они превышают 17 разрядов.
- Тип Float используется для хранения значений максимум в 8 местах. Он также начинается с крайней левой стороны и уменьшает цифры с правой стороны значения, если они превышают 8 разрядов.
var doubleVariable : Double = 1234567890.1234567890 var floatVariable : Float = 12345.12345 print(doubleVariable) //this will print only 17 digits from left //1234567890.1234567 print(floatVariable) //this will print only 8 digits from left //12345.123
Объем памяти
- Double занимает 8 байт памяти.
- Float занимает всего 4 байта памяти
var doubleVariable : Double = 1234567890.1234567890 var floatVariable : Float = 12345.12345 print(MemoryLayout.size(ofValue: doubleVariable)) //this will print //8 (bytes) print(MemoryLayout.size(ofValue: floatVariable)) //this will print //4 (bytes)
Пожалуйста, продолжайте читать на https://agrawalsuneet.github.io/blogs/double-vs-float-swift/
Это все на данный момент. Вы можете прочитать другие мои интересные блоги здесь или насладиться моими играми или приложениями, перечисленными здесь. Не стесняйтесь использовать мои компоненты Android с открытым исходным кодом в своем приложении, указанном здесь. Или напишите электронное письмо, если вы не нашли то, что ищете, и вам нужна помощь.