Soluzione 3.5

Ecco una possibile soluzione: notare l'uso delle variabili start e end, che indirizzano caratteri della stringa partendo rispettivamente dall'inizio e dalla fine di essa.
import java.util.Scanner;

public class PalindromeTester
{
    public static void main(String[] args)
    {

      Scanner in = new Scanner(System.in);

      System.out.println("Inserire stringa:");
      String s = in.nextLine();  // Cosa succede se uso next()?
      
      int start = 0;
      int end = s.length() -1;
      boolean isPalindrome = true;
      while (start < end && isPalindrome)
	{
	  if (s.substring(start, start+1).equals(s.substring(end, end +1)))
	    // Oppure, equivalentemente, if (s.charAt(start) == s.charAt(end))
	    {
	      start++;
	      end--;
	    }
	  else
	    isPalindrome = false;
	}

      if(isPalindrome)
	System.out.println("E` una palindrome!!");
      else
	System.out.println("Non e` una palindrome...");
	
    }
}