Ruby基礎(chǔ)代碼的示例分析,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
我們是從2013年成立的成都網(wǎng)站建設(shè)公司,提供網(wǎng)站建設(shè),電商網(wǎng)站設(shè)計開發(fā),外貿(mào)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)頁設(shè)計,微信平臺小程序開發(fā)、等服務(wù)。為客戶創(chuàng)造有價值的品牌營銷體驗,讓互聯(lián)網(wǎng)提升企業(yè)的競爭力!
Ruby語言的學(xué)習(xí)和其他編程語言一樣,首先要從基礎(chǔ)開始。在這里我們?yōu)榇蠹医榻B了一下Ruby基礎(chǔ)代碼中的BEGIN和END的編寫方式。
Ruby基礎(chǔ)代碼之BEGIN 塊
BEGIN 塊中的代碼在所有代碼執(zhí)行之前執(zhí)行,Ruby 允許設(shè)置多個 BEGIN 塊并按出現(xiàn)的順序執(zhí)行塊中的代碼。C# 程序員注意下面的代碼
BEGIN
{
print "OnInit(object sender,
EventArgs args)\n"
}
BEGIN
{
print "OnLoad(object sender,
EventArgs args)\n"
}
print "Running"
上面的代碼看上去很美吧,可惜的是上面的代碼段會出現(xiàn) parse error,正確的代碼應(yīng)該是
BEGIN{
print "OnInit(object sender,
EventArgs args)\n"}
BEGIN{
print "OnLoad(object sender,
EventArgs args)\n"}
print "Running"
正如上面的代碼段所呈現(xiàn)的,只有當(dāng)起始大括號和 BEGIN 標(biāo)識符位于同一行時塊內(nèi)的代碼才能得到正確的執(zhí)行。同時 BEGIN 塊也不受任何控制結(jié)構(gòu)的影響,因為只要出現(xiàn) BEGIN 塊就會得到執(zhí)行并且只執(zhí)行一次。
i = 0
while i < 10
# 雖然處理循環(huán)結(jié)構(gòu)中,但 BEGIN
塊內(nèi)的代碼仍然只執(zhí)行一次BEGIN{
print "OnInit(object sender,
EventArgs args)\n"}
i += 1
end
if false
# BEGIN 完全不受 if 的影響,
只要出現(xiàn) BEGIN 塊就會得到執(zhí)行BEGIN{
print "OnLoad(object sender,
EventArgs args)\n"}
end
print "Running"
基于只要現(xiàn)出 BEGIN 就會得到執(zhí)行和 BEGIN 在所有代碼執(zhí)行之前執(zhí)行的原則,即使 BEGIN 塊前出現(xiàn)了代碼,該代碼仍然會等待 BEGIN 塊執(zhí)行之后再執(zhí)行。比如下面的代碼段輸出結(jié)果仍然是 OnInit - OnLoad - Running。
print "OnLoad(object sender,
EventArgs args)\n"BEGIN{
print "OnInit(object sender,
EventArgs args)\n"}
print "Running"
Ruby基礎(chǔ)代碼之END 塊
END 塊與 BEGIN 塊相反,在所有代碼執(zhí)行之后執(zhí)行,多個 END 塊時最先出現(xiàn)的 END 塊最后執(zhí)行。除此之外,END 塊雖然不受 while 的影響,但是可能通過 if 來控制 END 塊的執(zhí)行與否。比如下面代碼的輸出結(jié)果就是 Start - Load - Unload。
if false END{ # 永遠(yuǎn)不輸出 print "Init" } end END{ # 最后輸出 print "Unload\n" } END{ # 先于 Unload 輸出 print "Load\n" } # 最先輸出 print "Start\n"
關(guān)于Ruby基礎(chǔ)代碼的示例分析問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
網(wǎng)頁標(biāo)題:Ruby基礎(chǔ)代碼的示例分析
本文地址:http://m.newbst.com/article8/gceeop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、全網(wǎng)營銷推廣、虛擬主機(jī)、外貿(mào)網(wǎng)站建設(shè)、用戶體驗、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)