Java.lang.String.lastIndexOf() Method



The java.lang.String.lastIndexOf(String str) method Returns the index within this string of the rightmost occurrence of the specified substring. The rightmost empty string "" is considered to occur at the index value this.length().

The returned index is the largest value k such that this.startsWith(str, k) is true.


Following is the declaration for java.lang.String.lastIndexOf() method

public int lastIndexOf(String str)


  • str -- This is the substring to search for.

Return Value

If the string argument occurs one or more times as a substring within this object, then the index of the first character of the last such substring is returned. If it does not occur as a substring, -1 is returned.


  • NA


The following example shows the usage of java.lang.String.lastIndexOf() method.

package com.tutorialspoint;

import java.lang.*;

public class StringDemo {

   public static void main(String[] args) {
   String str1 = "Collections of tutorials at tutorials point";
   // returns index of first character of the last substring "tutorials" 
   System.out.println("index =  " + str1.lastIndexOf("tutorials")); 
   // returns -1 as substring "admin" is not located
   System.out.println("index =  " + str1.lastIndexOf("admin"));    

Let us compile and run the above program, this will produce the following result:

index = 28
index = -1