- 相關(guān)推薦
Swift筆試試題及其答案
導(dǎo)讀:雖然Swift出生才一年,但是它已經(jīng)成為最流行的編程語(yǔ)言之一了,
Swift筆試試題及其答案
。它的語(yǔ)法很簡(jiǎn)單,以至于當(dāng)它發(fā)布的時(shí)候,java script開(kāi)發(fā)者感覺(jué)就像下圖一樣。以下是由應(yīng)屆畢業(yè)生網(wǎng)小編J.L為您整理推薦的Swift筆試試題及其答案,歡迎參考閱讀。事實(shí)上,Swift是一種復(fù)雜的語(yǔ)言。它包含面向?qū)ο蠛秃瘮?shù)方法這兩個(gè)方面,并且隨著新版本的發(fā)布在一直進(jìn)化。
你可以用這些問(wèn)題來(lái)測(cè)試應(yīng)聘者關(guān)于Swift方面的知識(shí)水平,或者測(cè)試一下你自己。如果你不知道答案,沒(méi)關(guān)系,沒(méi)一個(gè)問(wèn)題下面都有答案供你學(xué)習(xí)。
這些問(wèn)題包含兩個(gè)方面:
筆試問(wèn)題:通過(guò)電子郵件做一個(gè)編程測(cè)試是極好的,因?yàn)檫@涉及到寫大量的代碼,從代碼質(zhì)量上可以看出一個(gè)人的水平。
面試問(wèn)題:電話面試或者面對(duì)面面試也是很好的,因?yàn)閷?duì)面試者來(lái)說(shuō)口頭交流會(huì)更方面。
每個(gè)方面有分成三個(gè)等級(jí):
初級(jí):適合讀了一到兩本有關(guān)Swift的書,并且已經(jīng)開(kāi)始用Swift開(kāi)發(fā)應(yīng)用程序的初學(xué)者。
中級(jí):適合那些對(duì)Swift語(yǔ)言的概念有深刻理解和強(qiáng)烈興趣的,并且一直在閱讀大量有關(guān)Swift的博客文章并進(jìn)行實(shí)踐的中級(jí)工程師。
高級(jí):適合那些以探索Swift語(yǔ)言知識(shí)為樂(lè)趣,挑戰(zhàn)自己,使用前言技術(shù)的人們。
假如你想回答這些問(wèn)題,我建議你在回答這些問(wèn)題之前,打開(kāi)Playground運(yùn)行一下這些問(wèn)題的代碼。這些問(wèn)題的答案都在Xcode 7.0 Beta 6 版本中測(cè)試過(guò)。
準(zhǔn)備好了嗎?系好安全帶,現(xiàn)在就開(kāi)始!
筆試問(wèn)題
初學(xué)者
問(wèn)題1、(Swift 1.0及其之后的版本的問(wèn)題)有什么更好的方法來(lái)寫下面的for循環(huán)?
for var i = 0; i < 5; i++ {
print("Hello!")
}
答案:
for _ in 0...4 {
print("Hello!")
}
Swift 實(shí)現(xiàn)了兩個(gè)數(shù)組運(yùn)算符closed operator 和 half-operator.前者包含數(shù)組中得所有值。例如:下面的例子包含從0到4得所有整數(shù)
0...4
half-operator不包含數(shù)組中的最后一個(gè)元素,下面的例子會(huì)得到的結(jié)果和上面的一樣:
0..<5
問(wèn)題2– Swift 1.0 or later
思考下面的問(wèn)題:
struct Tutorial {
var difficulty: Int = 1
}
var tutorial1 = Tutorial()
var tutorial2 = tutorial1
tutorial2.difficulty = 2
tutorial1.difficulty 和 tutorial2.difficulty的值分別是多少?假如Tutorial是一個(gè)類,會(huì)有什么不同?并說(shuō)明原因,
資料共享平臺(tái)
《Swift筆試試題及其答案》(http://www.msguai.com)。答案:tutorial1.difficulty 的值是1,然而tutorial2.difficulty的值是2.
在Swift中結(jié)構(gòu)體是值類型,他們的值是復(fù)制的而不是引用的。下面的一行代碼意思是復(fù)制了tutorial1的值并把它賦值給tutorial2:
var tutorial2 = tutorial1
從這一行開(kāi)始,tutorial2值得改變并不影響tutorial1的值。
假如Tutorial是一個(gè)類,tutorial1.difficulty和tutorial2.difficulty的值將都會(huì)是2.在Swift中類對(duì)象都是引用類型。tutorial1屬性的任何改變將會(huì)反應(yīng)到tutorial2上,反之亦然。
問(wèn)題3 – Swift 1.0 or later
view1聲明成var類型,view2聲明let類型。這里有什么區(qū)別嗎?下面的最后一行代碼能編譯嗎?
import UIKit
var view1 = UIView()
view1.alpha = 0.5
let view2 = UIView()
view2.alpha = 0.5 // Will this line compile?
答案:view1是個(gè)變量可以重新賦值給一個(gè)新的實(shí)例化的UIView對(duì)象。使用let你只賦值一次,所以下面的代碼是不能編譯的:
view2 = view1 // Error: view2 is immutable
【Swift筆試試題及其答案】相關(guān)文章:
最新PHP筆試題目及答案05-25
助理、秘書筆試試題及答案06-09
臨床執(zhí)業(yè)(助理)醫(yī)師筆試試題及答案08-25
騰訊WEB前端筆試題和面試題答案10-09
軟件測(cè)試工程師筆試題及答案10-10
總經(jīng)理助理筆試題目含答案09-29
臨床執(zhí)業(yè)(助理)醫(yī)師筆試試題答案10-19
機(jī)械筆試題06-10