一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Ruby的基礎(chǔ) - 面向?qū)ο笳Z言Ruby

 duduwolf 2005-10-13

Ruby的“單行程序”

為了使您適應(yīng)腳本語言,首先介紹幾個(gè)Ruby的單行程序。

# 經(jīng)典的 Hello world.
print "Hello world\n"
# 列出輸入文件中包含”From”的行
while gets(); print if /From / end
# 向文件中添加行號(hào)
while gets(); print $., ":", $_ end
# π的計(jì)算
print 4*Math.atan2(1,1), "\n"

Ruby的注釋

Ruby的注釋是指從#開始到該行結(jié)束。

Ruby的表達(dá)式

Ruby的表達(dá)式包括下列內(nèi)容(主要的)。

字符串
字符串是指被單引號(hào)(‘)或雙引號(hào)(")括起來的部分。在用雙引號(hào)括起來的字符串中,可以使用反斜杠(\)來指定轉(zhuǎn)義字符,這同C語言是一樣的。同時(shí),以#{}括起來的表達(dá)式的結(jié)果也被置入其中。
數(shù)值
整數(shù),浮點(diǎn)數(shù)。
數(shù)組/散列表
用[]括起來的一串表達(dá)式是數(shù)組,而以{}括起來的一串表達(dá)式是散列表。
散列表是一種可以把任意類型的對(duì)象都當(dāng)成索引的數(shù)組。散列表有時(shí)也叫做哈希表或辭典。
變量/常數(shù)
Ruby中有常數(shù)和3種變量。變量和常數(shù)的區(qū)別在于第一個(gè)字符有所不同。
局部變量
變量名以小寫英文字母開始。使用時(shí),需要以賦值的方式進(jìn)行初始化。
全局變量
以$開始。未初始化的值為nil。
實(shí)例變量
以@開始。未初始化的值為nil。
類變量
以@@開始。未初始化的值為nil。
類常數(shù)
以大寫英文字母開始。未初始化的值為nil。
賦值
變量賦值方法如下。
變量=表達(dá)式
調(diào)用方法(函數(shù))
執(zhí)行對(duì)象固有操作(方法)的方法如下
表達(dá)式.方法名
表達(dá)式.方法名(表達(dá)式..)
在不引起混淆的情況下,可以省略參數(shù)的括號(hào)。
調(diào)用某方法執(zhí)行主體self的方法時(shí),可以省略最開始的表達(dá)式。
方法名
方法名(表達(dá)式..)
區(qū)分無參數(shù)的方法調(diào)用和局部變量的方法是看看有沒有賦值過程。
操作符表達(dá)式
普通的算式可以用(基本上與C語言一樣的)操作符來表示。但內(nèi)部是把操作符當(dāng)作方法調(diào)用(以操作符作為方法名)來處理的。

Ruby的語句

Ruby使用分號(hào)(;)或換行來分隔表達(dá)式,表達(dá)式串起來構(gòu)成語句。語句的值取決于最后執(zhí)行的表達(dá)式的值。

Ruby的流程控制結(jié)構(gòu)

Ruby中可以使用下列流程控制結(jié)構(gòu)。

  • if表達(dá)式 then代碼塊 [elsif表達(dá)式 then代碼塊]..[else代碼塊]end
  • case表達(dá)式when表達(dá)式..;代碼塊...[else代碼塊]end
  • while表達(dá)式;代碼塊end
  • for變量..in表達(dá)式;代碼塊end

if和while的意思與通常的語言基本相同??梢允褂梅痔?hào)或換行來代替if代碼塊中的then。請(qǐng)注意Ruby使用elsif代替C語言中的else if。

case是把若干個(gè)比較歸為一體的控制結(jié)構(gòu)。

for可以使用循環(huán)把數(shù)組等的元素分別賦值給變量。

循環(huán)內(nèi)可以使用下列語句。

break
中斷循環(huán)(相當(dāng)于C語言的break)。
next
開始下一次循環(huán)(相當(dāng)于C語言的continue)。
redo
重新執(zhí)行塊的第一行。

常用的語句

介紹幾個(gè)Ruby程序中常用的語句。這些語句是對(duì)象類的方法,可以在任何類中使用,就如同使用函數(shù)一樣。

exit([status])
結(jié)束程序的運(yùn)行。若為status指定了一個(gè)整數(shù)的話,該整數(shù)就成為結(jié)束status。默認(rèn)的status值為0。
gets
從命令行參數(shù)指定的文件(群)中讀取一行,然后把該行的內(nèi)容作為字符串返回。若沒有制定命令行參數(shù)的話,則從標(biāo)準(zhǔn)輸入中讀取。讀取的字符串可以被賦值給變量$_。遇到文件結(jié)束返回nil(偽)。
while gets
  ...
end
上面就是典型的用法。
open(文件名[,mode])
打開文件。mode是字符串,就和C的fopen一樣。省略時(shí)以讀取模式打開。
print
輸出函數(shù)。按順序?qū)?shù)輸出到標(biāo)準(zhǔn)輸出上。省略參數(shù)時(shí)則輸出變量$_的值。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    婷婷亚洲综合五月天麻豆| 久久99青青精品免费| 日韩日韩欧美国产精品| 欧美日韩中国性生活视频| 日系韩系还是欧美久久| 精品香蕉一区二区在线| 久久国产人妻一区二区免费| 国产日韩久久精品一区| 深夜视频在线观看免费你懂| 亚洲中文字幕视频在线观看| 激情图日韩精品中文字幕| 国产一级特黄在线观看| 国产乱久久亚洲国产精品| 色综合久久六月婷婷中文字幕| 国产精品欧美激情在线| 亚洲国产av在线观看一区| 国产目拍亚洲精品区一区| 欧美日韩精品久久第一页| 亚洲欧美日韩国产综合在线| 亚洲国产精品一区二区| 人妻熟女欲求不满一区二区| 亚洲最大的中文字幕在线视频| 欧美国产日产综合精品| 91久久精品国产一区蜜臀| 日本亚洲欧美男人的天堂| 观看日韩精品在线视频| 一区二区日本一区二区欧美| 亚洲伦理中文字幕在线观看| 国产精品福利精品福利| 亚洲精品欧美精品一区三区| 亚洲精品深夜福利视频| 三级高清有码在线观看| 日韩精品你懂的在线观看| 一区二区欧美另类稀缺| 久久碰国产一区二区三区| 欧美日韩中黄片免费看| 中文字幕日韩精品人一妻| 日韩人妻一区二区欧美| 色小姐干香蕉在线综合网| 国产欧美日产久久婷婷| 狠狠做深爱婷婷久久综合|