Ruby中带有示例的Array.rrindex()方法

Array.rindex()方法

在本文中,我们将研究Array.rindex()方法。你们都必须认为该方法必须执行与查找某些元素的索引有关的操作。它并不像看起来那么简单。好吧,我们将在其余内容中解决这个问题。我们将尝试借助语法并演示程序代码来理解它。

方法说明:

该方法是一个公共实例方法,为Ruby库中的Array类定义。此方法的工作方式是返回对象的索引,该对象作为方法中的参数传递,但要稍加改动,它从Array实例的末尾进行检查。例如,如果Array对象中有三个“ s”,则它将返回最后一个“ s”的索引。如果提供了一个块而不是一个参数,则它将从数组的最后或结尾开始返回该块为真的第一个对象的索引。如果找不到匹配项,此方法将返回“ nil”

语法:

    array_instance.rindex(object) -> int, nil
    or
    array_instance.rindex{|item| block} -> int, nil

Argument(s) 需要:

如果未通过块调用此方法,则此方法采用一个参数,该参数是将要对其进行搜索的对象的名称。

范例1:

=begin
  Ruby program to demonstrate rindex method
=end

# 数组声明
lang = ["C++","Java","Java","Java","Python","Html","Javascript","php","Ruby","Kotlin"]

puts "Enter the element you want to search"
ele = gets.chomp

if (lang.rindex(ele))
  puts "#{ele} found at #{lang.rindex(ele)} index"
else
	puts "#{ele} does not exist"
end

输出结果

Enter the element you want to search 
Java
Java found at 3 index

说明:

在上面的代码中,您可以观察到我们在Arrayrindex()的帮助下找到了对象的索引方法。对象“ Java”以三个不同的索引(即1、2和3)存在,但是该方法返回索引3,因为在该rindex()方法的情况下,搜索从Array实例的末尾开始。

范例2:

=begin
  Ruby program to demonstrate rindex method
=end

# 数组声明
lang = ["C++","Java","Java","Java","Python","Html","Javascript","php","Ruby","Kotlin"]

puts "Enter the element you want to search"
ele = gets.chomp

if (lang.rindex{|item| item == ele})
  puts "#{ele} found at #{lang.rindex{|item| item == ele}} index"
else
	puts "#{ele} does not exist"
end

输出结果

Enter the element you want to search 
Java
Java found at 3 index

说明:

在上面的代码中,您可以观察到,我们使用一个块来调用该方法而不是参数。对象“ Java”以三个不同的索引(即1、2和3)存在,但是该方法返回索引3,因为在rindex()方法的情况下,搜索从Array实例的末尾开始。