What is the StringUtils.indexOfAny method in Java?
Overview
In Java, indexOfAny() is a StringUtils class, which is used to return the index of any of the character(s) sequences from the given set. This method returns -1 if none of the character sequences are in the given text.
How to import StringUtils
The definition of StringUtils is found in the Apache Commons Lang package. Let’s add this 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, please refer to the Maven Repository.
Let’s import the StringUtils class as follows:
import org.apache.commons.lang3.StringUtils;
Syntax
public static int indexOfAny(final CharSequence cs, final char... searchChars)
Parameters
cs: The character sequence or string to search in.searchChars: The list of search characters.
Return value
This method returns an integer.
Example
<?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 StringUtils is included in the pom.xml file:
Main.java
- Lines 1–2: We import the
StringUtilsandArraysclasses. - Line 7: We define the character sequence to search is called
text. - Line 8: We define the list of characters to be searched. It’s called
searchChars. - Line 9: We invoke the
indexOfAnypassingtextandsearchCharsas parameters. The character,z, is not present in thetext, but characterois present. The method returns the index of the first occurrence of the charactero. - Line 11: A new list of characters to be searched is assigned to
searchChars. - Line 12: We invoke the
indexOfAnypassingtextandsearchCharsas parameters. The method returns-1as none of the characters in thesearchCharsarray is present intext.