Ruby語法了解

2021-07-05 13:20:03 字數 1313 閱讀 2142

三、流程控制

1、條件控制

if 條件表示式  operation1 elsif operation2 else operation3 end

unless 條件表示式 operation2  else operation1 end 與if流程相反

2、分支控制

case 表示式 when 值1,值2 operation1 when 值3,值4 operation else operation3 end

3、迴圈控制

while 條件表示式 operation end

until 條件表示式 operation end

for 迴圈變數 in 陣列物件 operation end

for 迴圈變數 in 區間物件 operation end

注意:其中break控制退出,next=continue,retry重新迭代

相關**:條件控制示例

四、ruby物件導向

1、定義類

通過class關鍵字,並且遵循慣例,比如class myclass

類的繼承myclass定義類沒有建構函式,直接通過new方法例項化物件

2、定義方法、屬性

方法定義:通過def關鍵字,可以通過myclass.method、self.method方式宣告為類方法

屬性定義:通過attr[attr_reader|attr_writer|attr_accessor]: atrr1,或者通過方法定義def attr2 @attr2 end

方法與屬性可以通過public private protected修飾

相關**:myclass類定義

3、類變數

通過方法定義def attr @@attr end,可以在類中初始化@@attr = value。

相關**:類變數定義

4、擴充套件與繼承

擴充套件:即將已有的類繼續擴充套件,包括擴充套件新的例項方法,類方法,覆蓋舊的方法

相關**:擴充套件fixnum

繼承:定義另乙個類的時候使用 < 繼承已有的類

相關**:繼承乙個類

5、通過別名達到多型的效果

當用alias 新的名字 舊的名字時,新的名字作為舊的名字的備份,當舊的名字被覆蓋時,新的名字仍然保留原有的功能

相關**:alias別名的使用

6、複製與物件的凍潔

複製:擁有乙個物件的副本,通過object的方法dup、clone進行乙個淺複製,通過marshal的方法dup_var = dump(obj)、load(dup_var)序列化進行深複製

凍潔:指凍潔物件的修改,通過方法freeze

相關**:物件的複製與凍潔

Ruby語法小記

0 基本語法 1 輸出 2 輸入 3 基本型別 ruby是沒有型別的,賦值成什麼就是什麼型別。比如 subtotal 100.00,taxrate 0.15,sum 100,name fread 4 全域性變數 在變數前加符號 表示全域性變數。5 類 成員變數 類方法 類例項 object clas...

Ruby 語法講解

讓我們編寫乙個簡單的 ruby 程式。所有的 ruby 副檔名都是.rb。所以,把下面的源 放在 test.rb 檔案中。usr bin ruby w puts hello,ruby 在這裡,假設您的 usr bin 目錄下已經有可用的 ruby 直譯器。現在,嘗試執行這個程式,如下所示 ruby ...

Ruby基本語法

一 ruby中一切都是物件 比如可以用.class屬性來檢視乙個物件的型別,看下1.class,會發現常數1的型別是fixnum,1是fixnum的乙個例項。二 ruby語法 ruby中的類以class開始 以end結束,類名首字母的約定是大寫 ruby中的方法以def開始 以end結束,方法名首字...