The goal of this article is to talk about how predicate methods work. Examples are going to be provided using the programming language
In order to grasp the idea, let's see the definition of the word
predicate in some fields of study.
In Discrete Mathematics, a predicate is a statement or declaration or a mathematical assertion that contains variables, and it returns true or false according to the variable's values.
In natural language grammar, it doesn't really matter the language, the predicate is a statement about a subject, which is either true or false. In other words, the predicate is the part of a sentence that includes the verb and a complement.
As an example, let's check the following sentence:
The girls went to the park. The predicate is
went to the park.
In other words, a predicate is a function that accepts arguments and return a boolean value or something like that. Basically, if the function asks any question to the object state or value, expecting the result to be true or false, then, these are called predicate functions or methods. The idea is to check if the input meets one specific condition.
In Ruby, there's a naming convention for predicate methods: they end with a question mark. IF followed, this convention improves the readability of the code, since it looks like a question in English.
Let's check some examples of predicate methods:
integer?It checks if the value is an integer or not.
irb(main):001:0> 4.integer? => true
odd?it returns true if the value is odd number
irb(main):002:0> 3.odd? => true irb(main):003:0> 4.odd? => false
empty?It returns true if the length of self (current object) is zero, false otherwise.
irb(main):004:0> "alexandre-calaca".empty? => false irb(main):005:0> "".empty? => true
In this article, it was possible to understand what predicate methods are.
Hope it was useful.
That's for today. Let me know if you have any questions.
By the way, you help me a lot if you like and/or share this article.