w3resource

Java Exercises: Get the first occurrence of a string within a given string

Java Basic: Exercise-118 with Solution

Write a Java program to get the first occurrence (Position starts from 0.) of a string within a given string.

Pictorial Presentation:

Java Exercises: Get the first occurrence of a string within a given string

Sample Solution:

Java Code:

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
   		String s = "Python";
   		//String t = "Py";
   		  String t = "yt";
   		// String t = "ab";   		
   System.out.printf(String.valueOf(strStr(s, t)));
		  }     
public static int strStr(String source, String target) {
        if (source == null || target == null) {
            return -1;
        }
        if ("".equals(target) || source.equals(target)) {
            return 0;
        }
        int i = 0;
        int last = source.length() - target.length() + 1;
        while (i < last) {
            if (source.charAt(i) == target.charAt(0)) {
                boolean equal = true;
                for (int j = 0; j < target.length() && equal; ++j) {
                    if (source.charAt(i + j) != target.charAt(j)) {
                        equal = false;
                    }
                }
                if (equal) {
                    return i;
                }
            }
            ++i;
        }
        return -1;
    }
}

Sample Output:

1 

Flowchart:

Flowchart: Java exercises: Get the first occurrence of a string within a given string

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a Java program to compute the square root of an given integer.
Next: Write a Java program to get the first occurrence (Position starts from 0.) of an element of a given array

What is the difficulty level of this exercise?



Java: Tips of the Day

Execution of console commands:

Java allows you to execute console commands directly from code using a class Runtime. It is very important not to forget about exception handling.

For example, let's try to open a PDF file through a Java terminal:

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
  
public class ShellCommandExec {
  
  public static void main(String[] args) {
    String gnomeOpenCommand = "gnome-open //home//user//Documents//MyDoc.pdf";
  
    try {
      Runtime rt = Runtime.getRuntime();
      Process processObj = rt.exec(gnomeOpenCommand);
  
      InputStream stdin = processObj.getErrorStream();
      InputStreamReader isr = new InputStreamReader(stdin);
      BufferedReader br = new BufferedReader(isr);
  
      String myoutput = "";
  
      while ((myoutput=br.readLine()) != null) {
        myoutput = myoutput+"\n";
      }
      System.out.println(myoutput);
    }
    catch (Exception e) {
      e.printStackTrace();
    }
  }
}