swift學(xué)習(xí)筆記之二---基礎(chǔ)部分

數(shù)據(jù)類型

1.基礎(chǔ)數(shù)據(jù)類型:Int Double Float Bool String
2.集合類型:Array Set Dictionary
3.其他:
元組:(用于函數(shù)返回多個(gè)值)
可選類型(Optional):

 let possibleNumber = "test"
let convertedNumber = Int(possibleNumber)
// convertedNumber 被推測(cè)為類型 "Int?"履腋, 或者類型 "optional Int"

1.一個(gè)可選的Int被寫作Int?而不是Int踩晶。問號(hào)暗示包含的值是可選類型苛预,也就是說可能包含Int值也可能不包含值。
2.nil不能用于非可選的常量和變量呐粘。如果你的代碼中有常量或者變量需要處理值缺失的情況,請(qǐng)把它們聲明成對(duì)應(yīng)的可選類型
3.一個(gè)可選的Int被寫作Int?而不是Int转捕。問號(hào)暗示包含的值是可選類型作岖,也就是說可能包含Int值也可能不包含值。

let possibleString: String? = "An optional string."
let forcedString: String = possibleString! // 需要驚嘆號(hào)來獲取值

斷言

可選類型可以讓你判斷值是否存在五芝,你可以在代碼中優(yōu)雅地處理值缺失的情況痘儡。然而,在某些情況下与柑,如果值缺失或者值并不滿足特定的條件谤辜,你的代碼可能沒辦法繼續(xù)執(zhí)行。這時(shí)价捧,你可以在你的代碼中觸發(fā)一個(gè)斷言(assertion)來結(jié)束代碼運(yùn)行并通過調(diào)試來找到值缺失的原因

使用全局assert(_:_file:line:)函數(shù)來寫一個(gè)斷言丑念。向這個(gè)函數(shù)傳入一個(gè)結(jié)果為true或者false的表達(dá)式以及一條信息,當(dāng)表達(dá)式的結(jié)果為false的時(shí)候這條信息會(huì)被顯示:

let age = -3
assert(age >= 0, "A person's age cannot be less than zero")
// 因?yàn)?age < 0结蟋,所以斷言會(huì)觸發(fā)

如果不需要斷言信息脯倚,可以省略,就像這樣:asset(age >= 0)
斷言的適用場(chǎng)景:

  • 整數(shù)類型的下標(biāo)索引被傳入一個(gè)自定義下標(biāo)實(shí)現(xiàn)嵌屎,但是下標(biāo)索引值可能太小或者太大推正。
  • 需要給函數(shù)傳入一個(gè)值,但是非法的值可能導(dǎo)致函數(shù)不能正常執(zhí)行宝惰。
  • 一個(gè)可選值現(xiàn)在是nil植榕,但是后面的代碼運(yùn)行需要一個(gè)非nil值。

注意:
1.當(dāng)代碼使用優(yōu)化編譯的時(shí)候尼夺,斷言將會(huì)被禁用尊残,例如在 Xcode 中炒瘸,使用默認(rèn)的 target Release 配置選項(xiàng)來 build 時(shí),斷言會(huì)被禁用
2.當(dāng)代碼使用優(yōu)化編譯的時(shí)候寝衫,斷言將會(huì)被禁用顷扩,例如在 Xcode 中,使用默認(rèn)的 target Release 配置選項(xiàng)來 build 時(shí)慰毅,斷言會(huì)被禁用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末隘截,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子汹胃,更是在濱河造成了極大的恐慌婶芭,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,000評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件统台,死亡現(xiàn)場(chǎng)離奇詭異雕擂,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)贱勃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門井赌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人贵扰,你說我怎么就攤上這事仇穗。” “怎么了戚绕?”我有些...
    開封第一講書人閱讀 168,561評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵纹坐,是天一觀的道長。 經(jīng)常有香客問我舞丛,道長耘子,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,782評(píng)論 1 298
  • 正文 為了忘掉前任球切,我火速辦了婚禮谷誓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘吨凑。我一直安慰自己捍歪,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評(píng)論 6 397
  • 文/花漫 我一把揭開白布鸵钝。 她就那樣靜靜地躺著糙臼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪恩商。 梳的紋絲不亂的頭發(fā)上变逃,一...
    開封第一講書人閱讀 52,394評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音怠堪,去河邊找鬼揽乱。 笑死末患,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的锤窑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,952評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼嚷炉,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼渊啰!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起申屹,我...
    開封第一講書人閱讀 39,852評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤绘证,失蹤者是張志新(化名)和其女友劉穎瘩欺,沒想到半個(gè)月后寓涨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡压真,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評(píng)論 3 341
  • 正文 我和宋清朗相戀三年杆煞,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了魏宽。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,615評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡决乎,死狀恐怖队询,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情构诚,我是刑警寧澤蚌斩,帶...
    沈念sama閱讀 36,303評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站范嘱,受9級(jí)特大地震影響送膳,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜丑蛤,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評(píng)論 3 334
  • 文/蒙蒙 一叠聋、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧盏阶,春花似錦晒奕、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至砰盐,卻和暖如春闷袒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背岩梳。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評(píng)論 1 272
  • 我被黑心中介騙來泰國打工囊骤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留晃择,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,041評(píng)論 3 377
  • 正文 我出身青樓也物,卻偏偏與公主長得像宫屠,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子滑蚯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容