在前面的文章中,我们已经看到如何借助<=>运算符,==运算符和.eql来检查两个Array实例是否相同。方法?我们还看到了可以在先前定义的Array实例中插入元素的不同方法。现在,可以说我们已经对Ruby语言中的Array类有了相当多的了解。在本文中,我们将看到如何实现Array。assoc()方法?我们将在数组的其余部分中介绍其语法和一些示例。
方法说明:
该方法是Public实例方法,属于Array类,它位于Ruby语言库中。此方法用于检查对象是否为特定Array实例的一部分,并且该Array实例不能为普通Array实例。如果不正常,则表示Array实例是多个Array实例的Array,或者您可以说它是多个对象的集合,而这些对象本身就是Array类的对象。让我们来看一下语法,并演示该方法的程序代码。
如果您正在考虑它将返回什么,那么让我告诉您,它将返回找到对象存在的第一个包含的Array实例。如果未在任何数组中找到对象,它将返回“ nil”。
语法:
array_instance.assoc(obj)
Parameter(s):
此方法仅使用一个参数,而该参数不过是一个要检查其存在性的对象。
范例1:
=begin Ruby program to demonstrate assoc method =end # 数组 array1 = [1,"Ramesh","Apple",12,true,nil,"Satyam","Harish"] array2 = ["Akul","Madhu","Ashok","Mukesh",788] array3 = ["Orange","Banana","Papaya","Apricot","Grapes"] # 主数组 arraymain = [array1,array2,array3] # 输入元素进行搜索 puts "Enter the element you want to search" ele = gets.chomp # 检查 if arraymain.assoc(ele) != nil puts "Element found in:" print arraymain.assoc(ele) else puts "Element not found" end
输出结果
RUN 1: Enter the element you want to search Orange Element found in: ["Orange","Banana","Papaya","Apricot","Grapes"] RUN 2: Enter the element you want to search Kiwi Element not found
说明:
在上面的代码中,您可以发现我们调用了assoc()方法的Array实例不是任何普通的Array实例。它是多个Array实例的集合。它返回找到用户输入对象的整个Array实例。
范例2:
=begin Ruby program to demonstrate assoc method =end # 数组 array1 = ["Babita","Sabita","Ashok"] # 检查 puts array1.assoc("Babita")
输出结果
None
说明:
在上面,您可以验证该assoc()方法不适用于普通Array实例。即使对象是Array实例的一部分,它也将返回nil。