国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Ruby - Ruby中的方法(函數)學習總結

Ruby中的方法(函數)學習總結

2020-04-19 11:22VF Ruby

這篇文章主要介紹了Ruby中的方法(函數)學習總結,本文講解了函數的命名規則、函數參數、返回值等內容,需要的朋友可以參考下

1、Ruby中方法名和變量名的命名規則一樣(以小寫字母開頭,單詞之間的分隔使用“_”,),不過可以在方法名后邊帶上?。ㄖ匕醴椒ǎ┗蛘撸浚ú紶栴愋头祷刂担?。

2、方法的參數請使用(),參數都是局部變量,可以為這些參數設置默認值,帶“*”的參數是可選動態參數,可以傳入一個或者多個,如果有普通參數,也有可選參數,可選參數要放在最后,如下邊示例代碼。

 

復制代碼 代碼如下:


def read_book(chinese='水滸傳',english='Jane Eyre',*others)
  puts "中文書籍:#{chinese},English book:#{english}"
  temp=''
  others.each do |o|
    temp<<o<<' '
  end
  puts "其他可選書籍:#{temp}"
 
end

 

read_book
# 輸出:中文書籍:水滸傳,English book:Jane Eyre
read_book('西游記','Rails','紅樓夢','三國演義','封神演義','隋唐演義')
# 輸出:
# 中文書籍:西游記,English book:Rails
# 其他可選書籍:紅樓夢 三國演義 封神演義 隋唐演義

 

3、方法的返回值不需要進行聲明,默認情況下最后一行代碼為返回值,但是若有條件判斷返回的情況,需要用return聲明,如下示例代碼:

 

復制代碼 代碼如下:


def late_for_work?(minutes)
  return true if minutes>=15
  false
end

 

late_for_work?(10)    #false
late_for_work?(15)    #true

 

4、重磅方法是指方法名后帶“!”的方法,普通方法返回的是原對象的一個拷貝,而重磅方法返回的始終是原對象本身,如下邊示例代碼:

 

復制代碼 代碼如下:


x='hello'
y=x.upcase
puts "x:#{x},y:#{y}"   #輸出:x:hello,y:HELLO   x的值未發生改變

 

x='hello'
y=x.upcase!
puts "x:#{x},y:#{y}"   #輸出:x:HELLO,y:HELLO   x的值已經發生改變

 

5、方法中可以使用別名關鍵字“alias”生成方法的一個拷貝,即使原方法發生了變化,別名拷貝也不會發生變化,如下示例代碼:

 

復制代碼 代碼如下:

def show_alias
  puts 'Before alias!'
end
alias alias_foo show_alias
def show_alias
  puts 'After alias!'
end
show_alias   #輸出:After alias!
alias_foo    #輸出:Before alias!

 

6、Ruby的方法可以一次性返回多個值,不過實質上只是表面看來是返回多個值,本質上是返回了一個數組,數組中存儲多個返回值,接收時可以直接定義多個變量一次性接收,如下示例代碼:

 

復制代碼 代碼如下:

def more_result_foo
 x=5
 y=x*x
 z=y-x+2
 return x,y,z  #返回x,y,z三個值
end
a,b,c=more_result_foo #a,b,c接收返回的x,y,z
m=more_result_foo  #m接收返回的x,y,z
puts a,b,c    #輸出:5 25 22
puts m     #輸出:5 25 22
puts m.class   #輸出:Array

 

延伸 · 閱讀

精彩推薦
  • RubyRuby環境下安裝使用bundler來管理多版本的gem

    Ruby環境下安裝使用bundler來管理多版本的gem

    這篇文章主要介紹了Ruby環境下安裝使用bundler來管理多版本的gem的方法,舉了Ruby On Rails中的應用實例來進行演示,需要的朋友可以參考下 ...

    日拱一卒4332020-05-10
  • RubyRuby簡潔學習筆記(一):字符串、數字、類和對象

    Ruby簡潔學習筆記(一):字符串、數字、類和對象

    這篇文章主要介紹了Ruby簡潔學習筆記(一):字符串、數字、類和對象,本文是學習筆記第一篇,需要的朋友可以參考下 ...

    腳本之家2472020-04-20
  • RubyRuby進行文件信息輸出實例代碼

    Ruby進行文件信息輸出實例代碼

    Ruby進行文件信息輸出實例代碼,數據是隨機的,所以每次的記錄都會不同。 ...

    ruby教程網2962020-04-10
  • Ruby簡要說明Ruby中的迭代器

    簡要說明Ruby中的迭代器

    這篇文章主要介紹了Ruby中的迭代器,迭代器的概念在動態語言的編程中十分重要,文章中介紹了Ruby中的each迭代器和collect迭代器,需要的朋友可以參考下 ...

    goldensun2772020-04-25
  • Ruby剖析 Ruby 訪問控制

    剖析 Ruby 訪問控制

    前面,我們說 Ruby 沒有函數,只有方法.而且實際上有不止一種方法.這一節我們介紹 訪問控制 (accesscontrols). 想想當我們在最高層而不是在一個類的定義里定義...

    ruby教程網3572020-04-08
  • RubyRuby設計模式編程中使用Builder建造者模式的實例

    Ruby設計模式編程中使用Builder建造者模式的實例

    這篇文章主要介紹了Ruby設計模式編程中使用Builder建造者模式的實例,建造者模式將一個復雜對象的構造與它的表示分離,使同樣的構建過程可以創建不同的表...

    范孝鵬2192020-05-07
  • RubyRuby迭代器的7種技巧分享

    Ruby迭代器的7種技巧分享

    這篇文章主要介紹了Ruby迭代器的7種技巧分享,Ruby中的迭代器非常人性化,本文既是講解了7個技巧也是講解了7種迭代器,需要的朋友可以參考下 ...

    腳本之家4782020-04-20
  • RubyCentOS中配置Ruby on Rails環境

    CentOS中配置Ruby on Rails環境

    經過一個上午的折騰,終于把ROR環境在CentOS中搞定,繞了很多彎路,把文章寫下來總結一下 ...

    可樂加糖4762020-04-12
主站蜘蛛池模板: 成人av播放 | 最近中文字幕mv免费高清在线 | 精品日韩一区二区 | 亚洲精品久久久一区二区三区 | 国产激情网址 | 免费看国产黄色 | 亚洲综合中文 | 国产免费av网站 | 91精品国产综合久久久久 | 亚洲视频一区二区 | 久久99精品国产99久久6尤 | 黄色av免费 | 久久99精品久久久久久国产越南 | 99爱视频 | 欧美大片免费影院在线观看 | 亚洲av毛片 | 国产啊女在线观看 | 97伦理在线 | 国产日韩精品久久 | 久久亚洲国产精品 | 视频一区二区三区中文字幕 | 欧美日韩一区二区三区在线观看 | 国产一区二区三区在线 | 免费成人福利视频 | 中文字幕一区二区三区乱码在线 | 99热在线精品播放 | 色综合久久一区二区三区 | 日韩视频在线观看一区 | 久久综合久久88 | 欧美日韩在线免费观看 | 一级片网 | 国产成人精品一区二区三区 | 亚洲精品久久久久久久久久久 | 精品免费视频 | 久久国产精品久久久久久 | 亚洲综合射 | 色婷婷av一区二区三区大白胸 | 日韩精品免费 | 日韩一区二区在线观看 | 亚洲一区二区三区免费观看 | 色综合天天综合网国产成人网 |