How to Check if an Array Contains a Value in Ruby?

Learn via video courses
Topics Covered

Overview

In Ruby, arrays are commonly used data structures that store collections of elements. When working with arrays, it's often necessary to check if a specific value is present within the array. This article will explore various methods to accomplish this task, including built-in methods like include?, member?, any?, and find?. Additionally, we will also discuss the creation of custom methods for checking array values.

Introduction

Arrays in Ruby are ordered and indexed collections of objects. They can hold various types of elements, including numbers, strings, and even other arrays. To check if an array includes a specific value, Ruby offers multiple methods within its core library.

Transform Your Career

Choose from our industry-leading programs designed for career success

NSDC Certified

Modern Software and AI Engineering Program

Master full-stack development with AI integration

12 MonthsDuration
AI-LedCurriculum
Career SupportSupport
GoogleAmazonPaytm+1000 more
Go to Program
NSDC Certified

Modern Data Science and ML with specialisation in AI

Advanced data science techniques with AI specialization

12 MonthsDuration
AI-LedCurriculum
Career SupportSupport
GoogleAmazonPaytm+1000 more
Go to Program
NSDC Certified

Advanced AIML with Specialisation in Agentic AI

Deep dive into AIML with focus on Agentic systems

12 MonthsDuration
AI-LedCurriculum
Career SupportSupport
GoogleAmazonPaytm+1000 more
Go to Program
NSDC Certified

DevOps, Cloud & AI Platform Engineering

Build and manage AI-powered cloud infrastructure

12 MonthsDuration
AI-LedCurriculum
Career SupportSupport
GoogleAmazonPaytm+1000 more
Go to Program
NSDC Certified

AI Engineering Advanced Certification by IIT-Roorkee

Premier AI engineering certification from IIT-Roorkee

3 MonthsDuration
AI-LedCurriculum
Career SupportSupport
Program highlights
Go to Program

The include? Method

The include? method is a built-in Ruby method that checks if a ruby array contains a specific value. It returns a boolean value, true if the value is found and false otherwise.

Example

Here's an example:

Explanation

In the code snippet, we define an array called names and utilize the include? method to check if the ruby array contains the values "Virat" and "Rahul". The method outputs true for "Virat" since it exists in the array, while it outputs false for "Rahul" as it is not found within the array.

The member? Method

Similar to include? method, the member? method can also be used to check if a value is present in an array. It behaves exactly like include? and returns a boolean value.

Example

Here's an example:

Free Courses by top Scaler instructors
Python Course for Beginners With Certification: Mastering the Essentials
Java Course - Mastering the Fundamentals
DBMS Course - Master the Fundamentals and Advanced Concepts
JavaScript Course With Certification: Unlocking the Power of JavaScript
C++ Course: Learn the Essentials
Python and SQL for Data Science
Python Course for Beginners With Certification: Mastering the Essentials
Java Course - Mastering the Fundamentals
DBMS Course - Master the Fundamentals and Advanced Concepts
JavaScript Course With Certification: Unlocking the Power of JavaScript
C++ Course: Learn the Essentials
Python and SQL for Data Science

Explanation

In the code snippet above, we use the member? method to verify whether the names ruby array contains the values "Virat" and "Rahul". The method outputs true for "Virat" as it exists in the array, while it outputs false for "Rahul" since it is not found within the array.

The any? Method

The any? method is a highly adaptable function that checks whether an array has any element that meets a specified condition. It accepts a block or condition as input and returns a boolean output.

Scaler Placement Report and Statistics

₹23L
AVG CTC
SCALER PLACEMENT PROOF

Scaler learners achieved 2.5x salary growth with average post-Scaler CTC reaching ₹23L.

11,000+placements
650+companies
Verified data
Hiring Partners:
GoogleGoogleAmazonAmazonMicrosoftMicrosoftFlipkartFlipkartAdobeAdobe1200+ more

Example

Here's an example:

Explanation

In the given code snippet, the any? method is utilized to determine whether the array numbers contains any element that is greater than 3 and any element that is greater than 6. The method returns true for the first case, indicating that there exists at least one element greater than 3 in the array. Conversely, it returns false for the second case, suggesting that no element in the array is greater than 6.

The find? Method

The find? method is utilized to search for the initial element in an array that meets a specific condition. It retrieves the first element that satisfies the condition or returns "nil" if no such element is discovered.

Example

Here's an example:

Turn Learning into Career Growth

1200+Hiring Partners
89%Placement Rate
11,000+Placements
147%Avg Salary Increment
2.5XCareer Growth
₹23 LPAAvg Post-Scaler Salary
1200+Hiring Partners
89%Placement Rate
11,000+Placements
147%Avg Salary Increment
2.5XCareer Growth
₹23 LPAAvg Post-Scaler Salary

Explanation

In the above code snippet, we utilize the find? method to search for the first even number in the numbers array and the first number greater than 6. The method returns 2 for the first condition and "nil" for the second condition.

Custom Methods

Why is There a Need to Create a Custom Method?

  • Specific Requirements: Sometimes, the built-in methods may not fulfil the specific requirements of our code. Custom methods allow us to tailor the functionality to match our needs precisely.
  • Enhanced Readability: Creating custom methods can make our code more readable and maintainable by encapsulating complex logic or repetitive operations within a single method.
  • Code Reusability: Custom methods can be reused throughout our codebase, promoting code reusability and reducing redundancy.
  • Domain-Specific Logic: In certain domains or industries, we may need to implement specialized algorithms or rules that are not covered by the built-in methods.
  • Efficiency Enhancement: Custom methods enhance efficiency by allowing us to implement our logic and utilize different algorithms such as binary search or specialized data structures like tries, to optimize search operations.

How to Create a Custom Method Instead of Using Built-in Methods?

Define a Method: Begin by defining the custom method in our Ruby program. Utilize the def keyword, followed by the method name and any required parameters. Execute the Logic: Include the necessary logic within the method body to perform the desired operations. This may involve returning a specific result, iterating through an array, or checking conditions. Return a Value: The custom method should return a boolean indicating whether the value is present in the array or the intended value itself. Call the Method: Once the custom method is defined, it can be invoked from other parts of our code using its name and the appropriate parameters.

Example

Here's an example of a custom method:

Explanation

The given code snippet includes a custom function called custom_division_check?. This function accepts two arguments: an array, representing the array to be examined, and a value, indicating the multiple to be searched for. Inside the function, there is a loop that iterates over each element of the array using each method. The function immediately returns true if an element divisible by the specified value is found. If the iteration completes without finding a matching element, the function returns false.

In this code snippet, an array named numbers is initialized, containing integers. The custom_division_check? function is called twice: once with the value 3 and once with the value 2. The function accurately determines the presence of a multiple of 3 (9) in the array and returns true. It also correctly identifies the absence of a multiple of 2 and returns false.

Conclusion

  • Ruby provides built-in methods like include?, member?, any?, and find? to check if a ruby array contains a specific value.
  • The include? and member? methods are simple and return a boolean value indicating the presence of the value in the array.
  • The any? method checks if any element in the array satisfies a given condition and returns a boolean value.
  • The find? method returns the first element that matches a given condition or nil if no match is found.
  • Custom methods can be created to handle specific requirements for checking array values.
  • we can iterate through the array and compare each element against the desired value when creating custom methods.