當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Ruby Array.combination用法及代碼示例


本文簡要介紹ruby語言中 Array.combination 的用法。

用法

combination(n) {|element| ... } → self
combination(n) → new_enumerator

如果給定,則使用 self 的元素組合調用塊;返回 self 。組合的順序是不確定的。

當給定一個塊和一個 in-range 正整數參數 n ( 0 < n <= self.size ) 時,調用具有所有 n -tuple 組合的 self 的塊。

例子:

a = [0, 1, 2]
a.combination(2) {|combination| p combination }

輸出:

[0, 1]
[0, 2]
[1, 2]

另一個例子:

a = [0, 1, 2]
a.combination(3) {|combination| p combination }

輸出:

[0, 1, 2]

n 為零時,使用新的空數組調用塊一次:

a = [0, 1, 2]
a1 = a.combination(0) {|combination| p combination }

輸出:

[]

n 超出範圍(負數或大於 self.size )時,不調用該塊:

a = [0, 1, 2]
a.combination(-1) {|combination| fail 'Cannot happen' }
a.combination(4) {|combination| fail 'Cannot happen' }

如果沒有給出塊,則返回一個新的枚舉器:

a = [0, 1, 2]
a.combination(2) # => #<Enumerator: [0, 1, 2]:combination(2)>

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Array.combination。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。