We are well aware of validating a Palindrome string. The emphasize here is usage of StringBuffer/Builder and the reverse method to get the string reversed instead of using an interactive method to reverse characters one by one.
Also, unless the toString() method is explicitly invoked, the comparison does not return true, probably because the initial size of the Buffer is 16 in length which does not get truncated otherwise.
Code snippet:
public class Palindrome{ public static void main(String args[]) { Palindrome palindrome = new Palindrome(); palindrome.proceed(); } private void proceed() { String stringToBeChecked = "DA33AD"; StringBuffer stringBuffer = new StringBuffer(stringToBeChecked); //StringBuilder can also be used if (stringToBeChecked.equals(stringBuffer.reverse().toString())) //Please note this explicit conversion to String. Without this there is no guarantee that this condition will result in true //This probably will truncate the default length of 16 to the exact occupied length { System.out.println("Palindrome"); } else { System.out.println("Not a palindrome"); } }}