What is the ComparableUtils.lt method in Java?
Overview
The lt() method is a ComparableUtils class that returns a predicate for the passed value. The predicate checks for the lesser than condition against the passed value.
Note: Refer to the What is a Java predicate? shot to learn more about predicates in Java.
How to import ComparableUtils
The definition of ComparableUtils can be found in the Apache Commons Lang package, which we can add to the Maven project by adding the following dependency to the pom.xml file:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
Note: For other versions of the commons-lang package, we can refer to the Maven Repository.
We can import the ComparableUtils class like this:
import org.apache.commons.lang3.compare.ComparableUtils;
Syntax
public static <A extends Comparable<A>> Predicate<A> lt(final A b)
Parameter value
final A b: This is the object that needs to be compared to in the returned predicate.
Return value
This method returns a predicate.
Code
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>test</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>Main</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>Explanation
The Maven dependency for the ComparableUtils method is present in the pom.xml file:
Main.java
- Lines 1–2: We import the relevant classes.
- Line 7: We define an integer variable called
val. - Line 8: We pass
valas a parameter to theComparableUtils.lt()method. This returns a predicate calledlesserThan. - Line 9: We define an integer test value called
testVal. - Line 10: We use the
test()method of the predicate to test whether or not thetestValvalue is lesser than thevalvalue. Then, we print the result of the comparison. - Line 11: We assign a new test value to
testVal. - Line 12: We use the
test()method of the predicate to test whether or not thetestValvalue is lesser than thevalvalue. Then, we print the result of the comparison.