Java Program to Handle String Using String Function


To write a java program to handle string using string function.

String is a sequence of characters, for e.g. “Hello” is a string of 5 characters. In java, string is an immutable object which means it is constant and can cannot be changed once it has been created. In this tutorial we will learn about String class and String methods in detail along with many other Java String tutorials.

Creating a String

There are two ways to create a String in Java

  1. String literal
  2. Using new keyword

String literal

In java, Strings can be created like this: Assigning a String literal to a String instance:

String str1 = "Welcome";
String str2 = "Welcome";

The problem with this approach: As I stated in the beginning that String is an object in Java. However we have not created any string object using new keyword above. The compiler does that task for us it creates a string object having the string literal (that we have provided , in this case it is “Welcome”) and assigns it to the provided string instances.

But if the object already exist in the memory it does not create a new Object rather it assigns the same old object to the new instance, that means even though we have two string instances above(str1 and str2) compiler only created on string object (having the value “Welcome”) and assigned the same to both the instances. For example there are 10 string instances that have same value, it means that in memory there is only one object having the value and all the 10 string instances would be pointing to the same object.

What if we want to have two different object with the same string? For that we would need to create strings using new keyword.

Using New Keyword

As we saw above that when we tried to assign the same string object to two different literals, compiler only created one object and made both of the literals to point the same object. To overcome that approach we can create strings like this:

String str1 = new String("Welcome");
String str2 = new String("Welcome");

In this case compiler would create two different object in memory having the same string.

Java String class methods

The java.lang.String class provides many useful methods to perform operations on sequence of char values.

1char charAt(int index)returns char value for the particular index
2int length()returns string length
3static String format(String format, Object… args)returns a formatted string.
4static String format(Locale l, String format, Object… args)returns formatted string with given locale.
5String substring(int beginIndex)returns substring for given begin index.
6String substring(int beginIndex, int endIndex)returns substring for given begin index and end index.
7boolean contains(CharSequence s)returns true or false after matching the sequence of char value.
8static String join(CharSequence delimiter, CharSequence… elements)returns a joined string.
9static String join(CharSequence delimiter, Iterable<? extends CharSequence> elements)returns a joined string.
10boolean equals(Object another)checks the equality of string with the given object.
11boolean isEmpty()checks if string is empty.
12String concat(String str)concatenates the specified string.
13String replace(char old, char new)replaces all occurrences of the specified char value.
14String replace(CharSequence old, CharSequence new)replaces all occurrences of the specified CharSequence.
15static String equalsIgnoreCase(String another)compares another string. It doesn’t check case.
16String[] split(String regex)returns a split string matching regex.
17String[] split(String regex, int limit)returns a split string matching regex and limit.
18String intern()returns an interned string.
19int indexOf(int ch)returns the specified char value index.
20int indexOf(int ch, int fromIndex)returns the specified char value index starting with given index.
21int indexOf(String substring)returns the specified substring index.
22int indexOf(String substring, int fromIndex)returns the specified substring index starting with given index.
23String toLowerCase()returns a string in lowercase.
24String toLowerCase(Locale l)returns a string in lowercase using specified locale.
25String toUpperCase()returns a string in uppercase.
26String toUpperCase(Locale l)returns a string in uppercase using specified locale.
27String trim()removes beginning and ending spaces of this string.
28static String valueOf(int value)converts given type into string. It is an overloaded method.


  1. Start the program
  2. Declare the class called string Use
  3. Initialize two strings and using the two strings manipulate string operation
  4. Perform the operation like concat(),length(),chatAt(),startsWith(),endsWith(),etc
  5. Display the result


import java.util.Scanner;
public class Main
public static void main(String []args)
String a="Science";
String b="Maths";
System.out.println("length of A "+a.length());
System.out.println("length of B "+b.length());
System.out.println("char at 2 position in A "+a.charAt(2));
System.out.println("char at 2 position in B "+b.charAt(2));
System.out.println(" A starts with char S ="+a.startsWith("S"));
System.out.println(" B starts with char M ="+b.startsWith("M"));
System.out.println(" A ends with char e="+a.endsWith("e"));
System.out.println(" B ends with char s="+b.endsWith("s"));
System.out.println(" A concat B ="+a.concat(b));


Char at 2 position in B t
A starts with char  S = true
B starts with char M = true
A ends with char e = true
B ends with char e = true
A concat B = ScienceMaths 

Leave a Comment