Ruby 2.7.0 リファレンスマニュアル > ライブラリ一覧 > setライブラリ > Setクラス

class Set

クラス・モジュールの継承リスト: Set < Enumerable < Object < Kernel < BasicObject

要約

集合を表すクラスです。要素の間に順序関係はありません。

特異メソッド

定義 説明
self[*ary] -> Set

与えられたオブジェクトを要素とする新しい集合を作ります。

new(enum = nil) -> Set
new(enum = nil) {|o| ... } -> Set

引数 enum で与えられた要素を元に、新しい集合を作ります。

インスタンスメソッド

定義 説明
intersection(enum) -> Set
self & enum -> Set

共通部分、すなわち、2つの集合のいずれにも属するすべての要素からなる新しい集合を作ります。

union(enum) -> Set
self + enum -> Set
self | enum -> Set

和集合、すなわち、2 つの集合の少なくともどちらか一方に属するすべての要素からなる新しい集合を作ります。

difference(enum) -> Set
self - enum -> Set

差集合、すなわち、元の集合の要素のうち引数 enum に含まれる要素を取り除いた新しい集合を作ります。

add(o) -> self
self << o -> self
add?(o) -> self | nil

集合にオブジェクト o を加えます。

self == set -> bool

2 つの集合が等しいときに true を返します。

include?(o) -> bool
member?(o) -> bool
self === o -> bool

オブジェクト o がその集合に属する場合に true を返します。

self ^ enum -> Set

対称差、すなわち、2 つの集合のいずれか一方にだけ属するすべての要素からなる新しい集合を作ります。

classify {|o| ... } -> Hash

集合をブロックの値によって分類し、結果をハッシュとして返します。

clear -> self

集合の要素をすべて削除し、空にした後の self を返します。

clone -> Set
dup -> Set

集合を複製して返します。

collect! {|o| ...} -> self
map! {|o| ...} -> self

集合の各要素についてブロックを評価し、その結果で元の集合を置き換えます。

delete(o) -> self
delete?(o) -> self | nil

集合からオブジェクト o を削除します。

delete_if {|o| ... } -> self
reject! {|o| ... } -> self | nil

集合の各要素に対してブロックを実行し、その結果が真であるようなすべての要素を削除します。

disjoint?(set) -> bool

self と set が互いに素な集合である場合に true を返します。

divide {|o| ... } -> Set
divide {|o1, o2| ... } -> Set

元の集合をブロックで定義される関係で分割し、その結果を集合として返します。

each {|o| ... } -> self

集合の各要素についてブロックを実行します。

empty? -> bool

集合が要素を 1 つも持たないときに true を返します。

select! {|element| ... } -> self | nil
filter! {|element| ... } -> self | nil

各要素に対してブロックを評価し、その結果が偽であった要素を self から削除します。

flatten -> Set
flatten! -> self | nil

集合を再帰的に平坦化します。

inspect -> String
to_s -> String

人間の読みやすい形に表現した文字列を返します。

intersect?(set) -> bool

self と set の共通要素がある場合に true を返します。

keep_if {|element| ... } -> self

各要素に対してブロックを評価し、その結果が偽であった要素を self から削除します。

size -> Integer
length -> Integer

集合の要素数を返します。

merge(enum) -> self

元の集合に enum で与えられた要素を追加します。

subset?(set) -> bool
proper_subset?(set) -> bool

self が集合 set の部分集合である場合に true を返します。

superset?(set) -> bool
proper_superset?(set) -> bool

self が集合 set の上位集合 (スーパーセット) である場合に true を返します。

replace(enum) -> self

集合の要素をすべて削除し、enum で与えられた要素に置き換えます。

reset -> self

キーのハッシュ値を再計算します。

subtract(enum) -> self

元の集合から、enum で与えられた要素を削除します。

to_a -> Array

self を配列に変換します。要素の順序は不定です。

継承したメソッド

! != __id__ __send__ instance_eval instance_exec method_missing singleton_method_added singleton_method_removed singleton_method_undefined all? any? chain chunk chunk_while collect collect_concat count cycle detect drop drop_while each_cons each_entry each_slice each_with_index each_with_object entries filter filter_map find_index first grep grep_v group_by inject lazy max max_by min min_by minmax minmax_by none? one? partition reject reverse_each slice_after slice_before slice_when sort sort_by sum take take_while tally to_h to_set uniq zip !~ <=> =~ _dump class define_singleton_method display enum_for eql? equal? extend freeze frozen? hash initialize initialize_copy instance_of? instance_variable_defined? instance_variable_get instance_variable_set instance_variables is_a? itself marshal_dump marshal_load method methods nil? object_id pretty_inspect pretty_print pretty_print_cycle pretty_print_inspect pretty_print_instance_variables private_methods protected_methods psych_to_yaml public_method public_methods public_send remove_instance_variable respond_to? respond_to_missing? send singleton_class singleton_method singleton_methods taint tainted? tap then to_ary to_hash to_int to_io to_proc to_regexp to_str trust untaint untrust untrusted? .yaml_tag ::ARGF ::ARGV ::DATA ::ENV ::FALSE ::NIL ::RUBY_COPYRIGHT ::RUBY_DESCRIPTION ::RUBY_ENGINE ::RUBY_ENGINE_VERSION ::RUBY_PATCHLEVEL ::RUBY_PLATFORM ::RUBY_RELEASE_DATE ::RUBY_REVISION ::RUBY_VERSION ::SCRIPT_LINES__ ::STDERR ::STDIN ::STDOUT ::TOPLEVEL_BINDING ::TRUE