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


Ruby Array.reject用法及代碼示例


Ruby Array.reject 方法

在上一篇文章中,我們已經看到如何利用 Array.select 方法根據塊內提供的某些條件打印 Array 元素?在本文中,我們將看到如何使用 Array.reject 方法? Array.reject 方法與 Array.select 方法完全相反。

Array.reject 方法,顧名思義,用於拒絕 Array 中的某些元素。如果元素滿足塊內提供的條件或標準,則不會打印這些元素。此方法是一種非破壞性方法,不會給 Array 對象的實際值帶來任何變化。此方法基於您將在括號內提供的某些條件。此方法完全基於您在塊內提供的標準。即使您沒有在塊內指定任何條件,此方法也將起作用。如果您沒有提供任何拒絕條件或標準,它將打印所有值。

用法:

    Array.reject{|var| #condition}

參數:

此方法不允許傳遞任何參數,而是強製要求一個條件。

範例1:

=begin
  Ruby program to demonstrate Array.select
=end

# array declaration
num = [2,44,2,5,7,83,5,67,12,11,90,78,9]
puts "Enter 'a' for Even numbers and 'b' for odd numbers"
opt = gets.chomp

if opt == 'b'
  puts "Odd numbers are:"
  puts num.reject{|num|
    num%2 == 0
  }
elsif opt == 'a'
  puts "Even numbers are:"
  puts num.reject{|num|
    num%2 !=0
  }
else
  puts "Wrong selection. Input valid option"
end

輸出

RUN 1:
Enter 'a' for Even numbers and 'b' for odd numbers
 a
Even numbers are:
2
44
2
12
90
78

RUN 2:
Enter 'a' for Even numbers and 'b' for odd numbers
 b
Odd numbers are:
5
7
83
5
67
11
9

說明:

在上麵的代碼中,您可以觀察到我們正在從用戶那裏獲取關於用戶想要什麽類型的數字作為輸出的輸入。這是因為我們想在 Array.reject 方法中傳遞某些條件。我們根據用戶提供的選項向用戶提供響應,並且此方法僅以這種方式使用。它拒絕滿足塊內提供的條件的元素。

範例2:

=begin
  Ruby program to demonstrate Array.reject
=end

# array declaration
num = [2,44,2,5,7,83,5,67,12,11,90,78,9]
puts num.reject{|a|}

輸出

2
44
2
5
7
83
5
67
12
11
90
78
9

說明:

在上麵的輸出中,您可以觀察到,當您沒有在方法內部指定任何條件時,它仍然不會在內部拋出任何類型的異常,它將打印 Array 實例中存在的所有元素。這是我們可以區分 Array.select 和 Array.reject 的另一點。



相關用法


注:本文由純淨天空篩選整理自 Array.reject Method with Example in Ruby。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。