Skip to main content

String Comparison Example in Java

2 min read Updated May 29, 2026
Share:
On this page (10sections)

Introduction

String Comparison is a classic Java console program that demonstrates the concept with complete source code and sample output. Strings are immutable objects in Java; the examples show comparison, searching and transformation.

This tutorial walks through the program line by line, explains how the logic works, and highlights best practices you can apply in your own code.

Definition

A string is traditionally a sequence of characters, either as a literal constant or as some kind of variable. The latter may allow its elements to be mutated and the length changed, or it may be fixed (after creation). A string is generally understood as a data type and is often implemented as an array of bytes (or words) that stores a sequence of elements. A string may also denote more general arrays or other sequence (or list) data types and structures.

Syntax

Variable_name1 = Variable_name2.compareTo(Variable_name3)

String Comparison Example Program

import java.util.Scanner;
 
class StringComparison{
	public static void main(String args[]){
		String str1, str2;
		Scanner in = new Scanner(System.in);
		System.out.println("Enter first string");
		str1 = in.nextLine();
		System.out.println("Enter second string");
		str2 = in.nextLine();
		if ( str1.compareTo(str2) > 0 ){
			System.out.println("First string is greater");
		}
		else if ( str1.compareTo(str2) < 0 ){
			System.out.println("First string is smaller");
		}
		else{
			System.out.println("The strings are equal");// Strings are compared based on the length of the strings.
		}
	}
}

Sample Output

Enter first string
hello
Enter second string
hai
First string is greater

When to use

Use string manipulation when cleaning user input, parsing text files or formatting messages.

How it works

  1. Execution begins in the main method — the JVM calls this method when you run the class.

  2. import java.util.Scanner; imports a class used later in the program.

  3. A Scanner reads typed input from the keyboard (System.in).

  4. A println / print call writes text to the console — part of the sample output below.

  5. str1 = in.nextLine(); updates a variable used in the calculation or output.

  6. A println / print call writes text to the console — part of the sample output below.

  7. str2 = in.nextLine(); updates a variable used in the calculation or output.

  8. The if statement runs the nested code only when the condition is true.

Best Practices

  • Use meaningful variable and class names that describe their purpose.
  • Compile and run the program locally — modify values to see how output changes.
  • Read compiler errors carefully; they usually point to the exact line to fix.

Common Mistakes

  • Copying code without understanding each line — practice by changing one statement at a time.
  • Mismatching the public class name and the .java filename.
  • Forgetting semicolons at the end of statements.

Frequently Asked Questions

What does the String Comparison program demonstrate?
It shows how to implement string comparison in Java with a complete runnable example and expected console output.
How do I run this Java program?
Save the code in a `.java` file matching the public class name, compile with `javac`, then run with `java ClassName`.
When would I use this pattern?
Use string manipulation when cleaning user input, parsing text files or formatting messages.

Related Tutorials

Search tutorials