在前面的文章中,我们已经看到如何借助<=>运算符,==运算符和.eql来检查两个Array实例是否相同。方法?我们还看到了可以在先前定义的Array实例中插入元素的不同方法。现在,可以说我们已经对Ruby语言中的Array类有了相当多的了解。在上一篇文章中,我们已经看到了该assoc()方法的实现,但是assoc方法仅适用于Array对象,后者是多个Array对象的集合。
对于普通的Array对象,我们有Array.include?(obj)方法。在本文中,我们将看到如何实现Array.include?()方法?我们将在数组的其余部分中介绍其语法和一些示例。
方法说明:
该方法是Public实例方法,属于Array类,它位于Ruby语言库中。此方法用于检查对象是否为特定Array实例的一部分。它将搜索整个数组,并根据其搜索结果。让我们来看一下语法,并演示该方法的程序代码。
如果您正在考虑它将返回什么,那么让我告诉您,它将返回一个布尔值。如果在数组内找到对象,则返回值将为true;如果找不到对象是Array实例的一部分,则返回值为false。
语法:
array_instance.include?(obj)
Parameter(s):
此方法仅使用一个参数,而该参数不过是一个要检查其存在性的对象。
范例1:
=begin Ruby program to demonstrate include method =end # 数组 array1 = [1,"Ramesh","Apple",12,true,nil,"Satyam","Harish"] # 输入元素进行搜索 puts "Enter the element you want to search" ele = gets.chomp # 检查 if array1.include?(ele) != false puts "Element found" else puts "Element not found" end
输出结果
RUN 1: Enter the element you want to search Apple Element found RUN 2: Enter the element you want to search Mango Element not found
说明:
在上面的代码中,您可以观察到我们在普通Array实例上调用include方法。当发现用户输入的Array对象中存在对象时,它返回true。
范例2:
=begin Ruby program to demonstrate include method =end # 数组s 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.include?(ele) != false puts "Element found" else puts "Element not found" end
输出结果
Enter the element you want to search Array1 Element not found
说明:
在上面,您可以验证include方法不适用于Array实例,该实例是多个Array实例的集合。即使对象是Array实例的一部分,它也会返回false。