Ruby Set

Ruby Set

在Ruby中,集合是一个与数组非常相似的类,但是它具有一些特殊的属性,这些属性使处理速度更快。您必须已经观察到可以在数组中插入重复的元素,但这不是set的情况。集合不允许隐式插入非唯一元素。因此,将来,如果您将在集合的定义之后添加元素,则不必担心重复性。它不允许重复元素的容纳。以下是声明和定义Ruby集的方法

    set_name = Set.new([element1,element2,...])

现在,让我们看看如何借助一些支持示例来声明,定义和实现一个集合?

范例1:

=begin
Ruby program to demonstrate set 
=end

require 'set'

# 创建新套装。
Vegetable = Set.new(["potato", "tomato","brinjal","onion"])

puts "Number of elements in set are #{Vegetable.size()}"
puts Vegetable

输出结果

Number of elements in set are 4
#<Set: {"potato", "tomato", "brinjal", "onion"}>

在上面的示例中,您可以观察到根据上面给出的语法,我们正在创建一个名为Vegetable的集合。您还可以观察到,在开始编写代码之前,我们需要将语句要求为“ set”。我们仅在集合的帮助下计算集合中存在的元素数size()方法。将集合名称与puts语句一起编写,只会为我们提供有关集合元素的信息。

我们已经看到了如何在声明时在集合中添加元素?现在,让我们看看之后如何添加元素?

范例2:

=begin
Ruby program to demonstrate set 
=end

require 'set'

# 创建新套装。
Vegetable = Set.new(["potato", "tomato","brinjal","onion"])

puts "Number of elements in set are #{Vegetable.size()}"

puts Vegetable

Vegetable.add("Cauliflower")

Vegetable.add("Peas")

Vegetable.add("Beetroot")

puts "Number of elements in set are #{Vegetable.size()}"

puts Vegetable

输出结果

Number of elements in set are 4
#<Set: {"potato", "tomato", "brinjal", "onion"}>
Number of elements in set are 7
#<Set: {"potato", "tomato", "brinjal", "onion", "Cauliflower", "Peas", "Beetroot"}>

在上面给出的代码中,您可以观察到,之后我们借助set.add(“ Element”)方法在set Vegetable中添加了元素。然后,我们再次打印设置的大小和元素。

范例3:

=begin
Ruby program to demonstrate set 
=end

require 'set'

# 创建新套装。
Vegetable = Set.new(["potato", "tomato","brinjal","onion"])

puts "Number of elements in set are #{Vegetable.size()}"

puts Vegetable

Vegetable.add("potato")

Vegetable.add("tomato")

Vegetable.add("Beetroot")

puts "Number of elements in set are #{Vegetable.size()}"

puts Vegetable

输出结果

Number of elements in set are 4
#<Set: {"potato", "tomato", "brinjal", "onion"}>
Number of elements in set are 5
#<Set: {"potato", "tomato", "brinjal", "onion", "Beetroot"}>

在上面的代码中,观察输出后,即使添加了3个元素,您也必须考虑集合的大小为5。这是因为我们试图添加的元素已经存在于集合中。它不允许重复元素。您不会收到错误,但是重复的元素将被丢弃。