Swift中的数据类型解释和用法详解

本文概述

  • 数据类型的大小
  • Swift 4数据类型
  • 布尔数据类型
  • 整数数据类型
  • Int8数据类型
  • UInt数据类型
  • 浮动数据类型
  • 双数据类型
  • 字符数据类型
  • 字符串数据类型
  • 表格形式的数据类型变量的范围
在Swift 4编程语言中, 在创建变量或常量时使用数据类型。在每种编程语言中, 我们都必须使用不同类型的变量来存储数据。变量是保留的存储位置, 用于存储值。这意味着当你使用变量时, 将在内存中保留一些空间。
数据类型是变量可以存储在其中的数据(值)的类型。此数据可以是文本/字符串(” srcmini” )或数字(12.34), 也可以是位(0和1)。我们必须定义数据类型以确保仅存储定义的数据类型。
例如,
假设你必须将学生的数据存储在需要存储其姓名和分数的位置。标记是一个数字(即70), 名称是一个字符串(即Alex), 因此, 你需要创建两个变量或常量来存储数据。
在Swift 4中, 你可以通过将变量和数据类型声明为:
var Marks:Int = 70var Name:String = "Alex"

在这里, 我们声明了存储值70的Int类型的Marks变量和存储值Alex的String类型的Name变量。
如果使用以下语法, 则会出现编译时错误:
var Score:Int = "Alex"

它将显示一条消息, 指出无法将类型” 字符串” 的值转换为类型” Int” 。
它显示了一个数字只能以Int数据类型存储, 而不能以String数据类型存储。
数据类型的大小【Swift中的数据类型解释和用法详解】数据类型的大小指定可以存储在给定变量或常量中的数据的大小。数据类型的大小以位为单位, 并且可以存储最多2位的值。
因此, 大小为1位的数据类型最多可以存储21个= 2个值:0或1。
0 -> a or 0 1 -> b or 1

数据类型大小为2位, 最多可以存储22 = 4个值。分别是(00, 01, 10, 11)。它可以表示为:
00 -> a or 001 -> b or 111 -> c or 210 -> d or 3

与n位数据类型相同, 系统最多可以存储2n个值。
Swift 4数据类型最常见的Swift 4数据类型是:
布尔数据类型
  • Bool数据类型只能存储两个值true或false。
  • 其默认值为False。
  • 通常在if-else语句中使用。
布尔数据类型示例:
let result:Bool = trueprint(result)

输出
true

整数数据类型
  • 整数数据类型可以存储正数和负数, 包括零且无小数。
  • 其默认值为0。
  • 它的大小取决于平台类型, 可以是32位或64位。
  • 范围:-2, 147, 483, 648至2, 147, 483, 647(32位平台)
    -9223372036854775808至9223372036854775807(64位平台
  • 整数数据类型还有许多其他变体, 例如UInt, Int8, Int16等, 如果要专门指定存储类型, 可以使用它们。
整数数据类型示例:
var highScore:Int = 50print(highScore)highScore = 40print(highScore)

输出
5040

说明:在上面的程序中, 我们声明了一个Int类型的变量highScore, 然后将其赋值为50。它提供50的输出。
后来, 我们使用赋值运算符highScore = 40将值更改为40, 因此它提供了输出40。
Swift中还有更多Int数据类型的变体。
Int8数据类型Int8数据类型可以存储正数和负数。其默认值为0, 大小为8位, 范围从-128到127。
它可以存储28个值, 表示-128到127之间的值, 包括0。
var highScore:Int8 = -128//okhighScore = 127 //okhighScore = 128 // error occurred highScore = -129 //error occurred

你可以使用.min和.max检查Int8数据类型可以存储的最高和最低值。
.min和.max Int8数据类型的示例
print(Int8.min)print(Int8.max)

输出
-128127

UInt数据类型UInt(无符号整数)只能存储无符号数字(正数和零)。其他剩余属性与Integer数据类型的含义相同:
  • 默认值:0
  • 大小:32/64位取决于平台类型。
  • 范围:0至4294967295(32位平台)
    0至18446744073709551615(64位平台)
浮动数据类型浮点数据类型可以存储小数和小数。其默认值为0.0, 大小为32位, 范围从1.2 * 10-38到3.4 * 1038(?6位数字)。
浮动数据类型示例:
let highScore:Float = 3.1416print(highScore)

输出
3.1416

双数据类型Double数据类型可以将小数或小数存储为Float数据类型, 但比Float支持的小数点大。
其默认值为0.0, 大小:64位, 范围从2.3 * 10-308到1.7 * 10308(?15位)
双数据类型示例:
let highScore:Double = 3.1416print(highScore)

输出
3.1416

字符数据类型字符数据类型可以存储单个字符串文字。它用于添加表情符号或英语以外的语言。
字符数据类型示例:
let playerName:Character = "J"let playerNameWithUnicode:Character = "\u{134}"print(playerName)print(playerNameWithUnicode)

输出
J?

字符串数据类型字符串数据类型可以存储字符集合。它是值类型, 其默认值是” ” (空字符串)。
Swift使你可以使用一些特殊的转义序列在字符串中使用它们。例如,
\0 (null character), \\ (a plain backslash \), \t (a tab character), \v (a vertical tab), \r (carriage return), \" (double quote), \' (single quote), and\u{n} (unicode code point, n is in hexadecimal).

字符串数据类型示例:
let playerName = "Jack"let playerNameWithQuotes = "\"Jack\""let playerNameWithUnicode = "\u{134}ack"print(playerName)print(playerNameWithQuotes)print(playerNameWithUnicode)

输出
Jack"Jack"?ack

表格形式的数据类型变量的范围
Type 典型位宽 典型范围
Int8 1byte -127至127
UInt8 1byte 0至255
Int32 4bytes -2147483648至2147483647
UInt32 4bytes 0至4294967295
Int64 8bytes -9223372036854775808至9223372036854775807
UInt64 8bytes 0至18446744073709551615
Float 4bytes 1.2E-38至3.4E + 38(?6位数字)
Double 8bytes 2.3E-308至1.7E + 308(?15位数字)

    推荐阅读