【swift5.2-第一章】The?Basic?-?基礎(chǔ)知識(shí)?1

簡介

Swift 是一種用于iOS邓深、macOS浓冒、watchOS和tvOS應(yīng)用程序開發(fā)的新編程語言。盡管是新的語言所森,它還是有許多部分和C及OC非常的相似囱持。

C和OC所有基本類型,在swift中都有自己的版本焕济。包括整數(shù)的Int纷妆,浮點(diǎn)值的Double和Float,布爾值的Bool吼蚁,文本數(shù)據(jù)的String,它還提供了三種非常強(qiáng)大主要集合類型(Array问欠、Set和Dictionary)- Collection Types肝匆。

與C一樣,Swift使用變量通過標(biāo)識(shí)名存儲(chǔ)和引用值顺献。Swift還大量使用了值不可更改的變量旗国,這些被稱為常量,比C中的常量強(qiáng)大得多注整。在Swift中使用常量是為了在處理不需要更改的值時(shí)使代碼更安全能曾、更清晰。

除了熟悉的類型肿轨,swift還介紹了未在OC中使用的高級(jí)類型寿冕,例如元組(tuples),元組允許你創(chuàng)建和傳遞一組數(shù)據(jù)椒袍。你可以使用元組將方法中的多個(gè)值作為單個(gè)復(fù)合值返回驼唱。

Swift還引入了可選類型(Optionals type),用于處理缺少值的情況驹暑。Optionals表示“有一個(gè)值玫恳,它等于x”或“根本沒有值”。使用Optionals优俘,類似于OC的某個(gè)指針=nil京办,但是swift中 optionals可以用于任何類型,而不僅僅是classes帆焕。它們是swift許多最強(qiáng)大功能的核心惭婿。

Swift是一種類型安全的語言,這意味著swift可以幫助你明確代碼可以使用的值的類型。如果部分代碼需要String审孽,類型安全性會(huì)防止你錯(cuò)誤地傳遞Int县袱,同樣,類型安全防止您意外地將可選字符串傳遞給需要非可選字符串佑力。類型安全性幫助您在開發(fā)過程中盡早捕獲并修復(fù)錯(cuò)誤式散。

常量與變量

常量和變量將名稱(如maximumNumberOfLoginAttents或welcomeMessage)與特定類型的值(如數(shù)字10或字符串“Hello”)相關(guān)聯(lián)。常量的值一旦設(shè)置就不能更改打颤,而變量將來可以設(shè)置為不同的值暴拄。

常量和變量的聲明

常量和變量必須在使用前聲明,聲明常量和變量時(shí)分別使用關(guān)鍵字 let和var编饺。

 //聲明一個(gè)常量乖篷,并賦值為10,以后的值不能更改
 let maximumNumberOfLoginAttents = 10
 //聲明一個(gè)變量透且,并賦值為0撕蔼,值可以更改
 var currentLoginAttempt = 0
//還可以在一行當(dāng)中聲明多個(gè)常量或者變量,中間用逗號(hào)隔開
 var x=0.0,y=0.0,z=0.0 

如果x的值后續(xù)不需要改變則應(yīng)該使用關(guān)鍵字 ‘let’ 來替換 ‘var’*

類型注解

可以在聲明常量或變量時(shí)提供類型批注秽誊,用以明確常量或變量可以存儲(chǔ)的值的類型鲸沮。

 //聲明一個(gè)String 類型的變量 welcomeMessage
 var welcomeMessage: String
//賦值
welcomeMessage = "Hello"
 //一次聲明多個(gè)變量
 var red, green, blue: Double

實(shí)際開發(fā)中很少需要類型注解,swift可以推斷出已經(jīng)初始化的常量或變量的類型锅论。

常量和變量的聲明

其名稱可以包含任何字符:

 let 你好 = "hello word”
 let ???? = “cowdog”

常量及變量名稱不能包含空格讼溺、數(shù)學(xué)符號(hào)、箭頭最易、專用的Unicode怒坯、線條、框型圖等藻懒。

常量及變量名稱也不能以數(shù)字開頭剔猿。

常量一旦賦值,不允許再修改嬉荆。

 let languageName = "Swift"
 languageName = "Swift ++ "
 //This is a compile-time error: languageName cannot be changed
//編譯時(shí)錯(cuò)誤艳馒,常量languageName值不能被改變

注意:
常量與變量名稱聲明時(shí) 盡量盡量 不要 與 swift 關(guān)鍵字相同。(必須的請(qǐng)?jiān)谧兞棵麅啥思?`)

打印常量及變量

使用函數(shù) print(_:separator:terminator:)

 print(welcomeMessage)

print函數(shù)是全局函數(shù)员寇,可以將一個(gè)或多個(gè)值打印輸出弄慰。在Xcode中,print函數(shù)會(huì)再控制臺(tái)窗口中將值打印輸出蝶锋。separator陆爽,terminator 參數(shù)都有其默認(rèn)值,所以在使用print的函數(shù)時(shí)扳缕,可以將其忽略慌闭。

Swift使用字符串穿插的方式將常量或變量的名稱作為占位符 包含在較長的字符串中别威,提示Swift見其替換為常量或變量的當(dāng)前值,其格式如下:

 let friendlyWelcome = "hello world!"
 print("The current value of friendlyWelcome is \(friendlyWelcome)")
 //prints:  The current value of friendlyWelcome is hello world!

注釋

在代碼中使用注釋驴剔,作為對(duì)自己的提醒省古,在代碼編譯時(shí) 將忽略 這些注釋。
注釋的格式

// This is a comment . 這是注釋,為單行注釋
/*  This is also acomment ,but is written over multiple lines.
  此為多行注釋丧失,以(/*)開頭豺妓,以(*/)結(jié)尾,
 */
print("hello world")

分號(hào)

Swift 不需要再每行代碼結(jié)尾寫分號(hào)(“;”)布讹。但是琳拭,一行當(dāng)中有多個(gè)單獨(dú)的語句,則需要 分號(hào)間隔開描验。

 let cat = "??";print(cate)
 //prints "??"

這一章有點(diǎn)多白嘁,不怕浪費(fèi)紙張,下一章接上膘流。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末絮缅,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子呼股,更是在濱河造成了極大的恐慌耕魄,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件卖怜,死亡現(xiàn)場離奇詭異屎开,居然都是意外死亡阐枣,警方通過查閱死者的電腦和手機(jī)马靠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蔼两,“玉大人甩鳄,你說我怎么就攤上這事《罨” “怎么了妙啃?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長俊戳。 經(jīng)常有香客問我揖赴,道長,這世上最難降的妖魔是什么抑胎? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任燥滑,我火速辦了婚禮,結(jié)果婚禮上阿逃,老公的妹妹穿的比我還像新娘铭拧。我一直安慰自己赃蛛,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布搀菩。 她就那樣靜靜地躺著呕臂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪肪跋。 梳的紋絲不亂的頭發(fā)上歧蒋,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音澎嚣,去河邊找鬼疏尿。 笑死,一個(gè)胖子當(dāng)著我的面吹牛易桃,可吹牛的內(nèi)容都是我干的褥琐。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼晤郑,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼敌呈!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起造寝,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤磕洪,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后诫龙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體析显,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年签赃,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了谷异。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡锦聊,死狀恐怖歹嘹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情孔庭,我是刑警寧澤尺上,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站圆到,受9級(jí)特大地震影響怎抛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜芽淡,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一马绝、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧吐绵,春花似錦迹淌、人聲如沸河绽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽耙饰。三九已至,卻和暖如春纹份,著一層夾襖步出監(jiān)牢的瞬間苟跪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來泰國打工蔓涧, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留件已,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓元暴,卻偏偏與公主長得像篷扩,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子茉盏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

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