有趣的Ruby-學習筆記3

來源:互聯網
上載者:User

標籤:

Ruby方法

方法名要以小寫字母開頭,如果用大寫字母開頭會被作為常量 (這點很奇怪

定義一個無參的方法

def method_name    expr..end

定義一個有參的方法

def method_name (var1, var2)   expr..end
給參數設定預設值

def method_name (var1=value1, var2=value2)   expr..end

調用方法很簡單

method_name 25, 30
傳回值 很奇特的一點是ruby居然可以預設把最後一個語句的值當做傳回值比如 
def test   i = 100   j = 10   k = 0end
在調用這個方法時,將返回最後一個聲明的變數 k。

也可以用常規的return語句來傳回值

很有趣的是:如果給出超過兩個的運算式,包含這些值的數組將是傳回值。如果未給出運算式,nil 將是傳回值

#!/usr/bin/ruby# -*- coding: UTF-8 -*-def test   i = 100   j = 200   k = 300return i, j, kendvar = testputs var
返回

100200300
可變數量的參數
#!/usr/bin/ruby# -*- coding: UTF-8 -*-def sample (*test)   puts "參數個數為 #{test.length}"   for i in 0...test.length      puts "參數值為 #{test[i]}"   endendsample "Zara", "6", "F"sample "Mac", "36", "M", "MCA"
類方法 有一個奇怪的預設規則:當方法定義在類的外部,方法預設標記為 private。另一方面,如果方法定義在類中的,則預設標記為 public。Ruby alias 語句
alias 方法名 方法名alias 全域變數 全域變數
雖然真的不知道這個有什麼作用。。。Ruby undef 語句還可以動態取消方法定義( 這個不僅覺得沒什麼用,還覺得最好不要用



有趣的Ruby-學習筆記3

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.