Swift 數據類型含代碼

Swift 數據類型

在Swift 4編程語言中,創建變量或常量時使用數據類型。愛掏網 - it200.com在每種編程語言中,我們都必須使用不同類型的變量來存儲數據。愛掏網 - it200.com變量是保留用于存儲值的內存位置。愛掏網 - it200.com這意味著當你使用一個變量時,你在內存中儲存了一些空間。愛掏網 - it200.com

數據類型是變量可以存儲的數據(值)的類型。愛掏網 - it200.com這些數據可以是文本/字符串(”JavaTpoint”)或數字(12.34)或只是位(0和1)。愛掏網 - it200.com我們必須定義數據類型以確保只存儲定義的類型的數據。愛掏網 - it200.com

示例

假設您需要存儲學生的數據,其中需要存儲他的姓名和成績。愛掏網 - it200.com成績是一個 數字(即70) ,姓名是一個 字符串(即Alex) ,所以您需要創建兩個變量或常量來存儲這些數據。愛掏網 - it200.com

在Swift 4中,您可以通過聲明變量和數據類型來做到這一點:

var Marks:Int = 70
var Name:String = "Alex"

在這里,我們聲明了一個類型為 Int 的 Marks 變量,它存儲值 70,以及一個類型為 String 的 Name 變量,它存儲值 Alex。愛掏網 - it200.com

如果您使用以下語法,將會出現編譯時錯誤:

var Score:Int = "Alex"

它將顯示一個消息,表明無法將類型為 ‘String’ 的值轉換為指定類型 ‘Int’。愛掏網 - it200.com

這表明一個數字只能存儲在 Int 數據類型中,而不能存儲在 String 數據類型中。愛掏網 - it200.com

數據類型的大小

數據類型的大小指定了可以存儲在給定變量或常量中的數據的大小。愛掏網 - it200.com數據類型的大小以位為單位來衡量,并且可以存儲的值最多為2的次方個比特。愛掏網 - it200.com

因此,一個 數據類型大小為1位 可以存儲2的1次方=2個值:0或1。愛掏網 - it200.com

0 -> a or 0 
1 -> b or 1

數據類型大小為2位 可以存儲最多22 = 4個值。愛掏網 - it200.com這些值分別是:(00,01,10,11)。愛掏網 - it200.com它可以表示為:

00 -> a or 0
01 -> b or 1
11 -> c or 2
10 -> d or 3

與n位系統的數據類型相同,可以存儲最多2的n次方個值。愛掏網 - it200.com

Swift 4 數據類型

最常見的Swift 4數據類型有:

布爾型數據類型

  • 布爾型數據類型只能存儲兩個值,即true或false。愛掏網 - it200.com
  • 默認值為False。愛掏網 - it200.com
  • 通常用于if-else語句中。愛掏網 - it200.com

布爾型數據類型示例

let result:Bool = true
print(result)

輸出:

true

整數數據類型

  • 整數數據類型可以存儲包括零在內的正數、負數,但沒有小數。愛掏網 - it200.com
  • 默認值為0。愛掏網 - it200.com
  • 大小取決于平臺類型,可能是32位或64位。愛掏網 - it200.com
  • 范圍: -2,147,483,648到2,147,483,647(32位平臺) -9223372036854775808到9223372036854775807(64位平臺)
  • 整數數據類型有許多其他變體,比如UInt、Int8、Int16等,如果您想特定指定存儲類型,可以使用它們。愛掏網 - it200.com

整數數據類型示例

var highScore:Int = 50
print(highScore)
highScore = 40
print(highScore)

輸出:

50
40

說明: 在上面的程序中,我們聲明了一個Int類型的變量highScore,然后將其賦值為50,所以輸出為50。愛掏網 - it200.com

后來,我們使用賦值操作符將值更改為40,所以輸出為40。愛掏網 - it200.com

Swift中還有一些Int數據類型的變種。愛掏網 - it200.com

Int8數據類型

Int8數據類型可以存儲正負的小數字。愛掏網 - it200.com它的默認值是0,大小為8位,范圍從-128到127。愛掏網 - it200.com

它可以存儲28個值,即從-128到127,包括0。愛掏網 - it200.com

var highScore:Int8 = -128//ok
highScore = 127 //ok
highScore = 128 // error occurred 
highScore = -129 //error occurred

您可以使用 .min和.max 來查看Int8數據類型可以存儲的最高值和最低值。愛掏網 - it200.com

.min和 .max Int8數據類型的示例

print(Int8.min)
print(Int8.max)

輸出:

-128
127

UInt 數據類型

UInt (無符號整數) 只能存儲無符號的數字(正數和零)。愛掏網 - it200.com其余屬性與整數數據類型相同,即:

  • 默認值: 0
  • 大小: 32/64 位,取決于平臺類型
  • 范圍: 0 到 4294967295(32 位平臺);0 到 18446744073709551615(64 位平臺)

Float 數據類型

float 數據類型可以存儲小數和分數。愛掏網 - it200.com其默認值為 0.0,大小為 32 位,范圍從 1.2*10-38 到 3.4 * 1038(約 6 位數字)

Float 數據類型示例

let highScore:Float = 3.1416
print(highScore)

輸出:

3.1416

雙精度數據類型

雙精度數據類型可以存儲十進制或分數,其支持的小數點比浮點數類型更大。愛掏網 - it200.com

其默認值為0.0,大小:64位,范圍從2.310-308到1.710308(約15位數字)。愛掏網 - it200.com

雙精度數據類型示例

let highScore:Double = 3.1416
print(highScore)

輸出:

3.1416

字符數據類型

字符數據類型可以存儲單個字符的字符串字面量。愛掏網 - it200.com它用于添加表情符號或除英語之外的其他語言。愛掏網 - it200.com

字符數據類型示例

let playerName:Character = "J"
let playerNameWithUnicode:Character = "\u{134}"
print(playerName)
print(playerNameWithUnicode)

輸出:

J
?

字符串數據類型

字符串數據類型可以存儲一系列字符。愛掏網 - it200.com它是值類型,其默認值為空字符串””。愛掏網 - it200.com

Swift允許您使用一些特殊的轉義序列來在字符串中使用它們。愛掏網 - it200.com

示例

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 Typical Bit Width Typical Range
Int8 1字節 -127 到 127
UInt8 1字節 0 到 255
Int32 4字節 -2147483648 到 2147483647
UInt32 4字節 0 到 4294967295
Int64 8字節 -9223372036854775808 到 9223372036854775807
UInt64 8字節 0 到 18446744073709551615
Float 4字節 1.2E-38 到 3.4E+38(約6位有效數字)
Double 8字節 2.3E-308 到 1.7E+308(約15位有效數字)

聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
發表評論
更多 網友評論0 條評論)
暫無評論

返回頂部

主站蜘蛛池模板: 成人午夜精品久久久久久久小说| 91丁香亚洲综合社区| 欧美乱人伦中文在线观看不卡| 国产精品久久久久电影| 久久老子午夜精品无码怎么打| 野狼第一精品社区| 忍者刺客在线观看完整中文免费版| 免费人成视频在线观看网站| 91精品欧美一区二区综合在线| 最新亚洲人成无码网www电影| 国产乱码一区二区三区爽爽爽| 三个黑人上我一个经过| 激情综合色五月六月婷婷| 国产精品亚洲欧美一区麻豆 | 欧美另类z0z免费观看| 国产福利精品视频| 久久久久亚洲av无码尤物| 精品伊人久久久| 国产精品无码久久久久| 久久国产精品-国产精品| 精品一卡2卡三卡4卡免费网站| 国产香港特级一级毛片| 久久精品电影院| 精品久久8X国产免费观看| 国产精品自产拍在线观看| 久久午夜精品视频| 用我的手指来扰乱吧全集在线翻译| 国产精品亚洲专区无码WEB| 久9re热这里精品首页| 渣男渣女抹胸渣男渣女在一起 | 娇妻校花欲乱往事叶子txt下载| 亚洲日韩在线视频| 青青青国产精品一区二区| 天天躁日日躁狠狠躁人妻 | 内射人妻视频国内| 桃花阁成人网在线观看| 无人高清视频完整版在线观看| 亚洲精品nv久久久久久久久久| 香蕉一区二区三区观| 天堂成人一区二区三区| 久久综合九色综合97伊人麻豆|