Skip to content
Related Articles

Related Articles

Java program to check whether a string is a Palindrome
  • Difficulty Level : Basic
  • Last Updated : 03 Feb, 2021

Given a string str, the task is to find whether the string is a palindrome or not in Java without using library methods.


Input: str = “abba” 
Output: Yes

Input: str = “geeks” 
Output: No  

Approach: Take two pointers i pointing to the start of the string and j pointing to the end of the string. Keep incrementing i and decrementing j while i < j and at every step check whether the characters at these pointers are same or not. If not then the string is not a palindrome else it is.

Below is the implementation of the above approach: 


// Java implementation of the approach
public class GFG {
    // Function that returns true if
    // str is a palindrome
    static boolean isPalindrome(String str)
        // Pointers pointing to the beginning
        // and the end of the string
        int i = 0, j = str.length() - 1;
        // While there are characters to compare
        while (i < j) {
            // If there is a mismatch
            if (str.charAt(i) != str.charAt(j))
                return false;
            // Increment first pointer and
            // decrement the other
        // Given string is a palindrome
        return true;
    // Driver code
    public static void main(String[] args)
        String str = "geeks";
        if (isPalindrome(str))


Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up
Recommended Articles
Page :