Для начала я вижу, что вы пропустили "{" в ваше второе время.
Однако я не понимаю, зачем вам нужно 2 цикла while.
Если вы читаете ваш код построчно, вы можете понять, почему первый цикл выводит «правильную» строку.
Однако, если вы введете неверный палиндром, он никогда не войдет в первый цикл, поэтому не напечатает нужное предложение.
Вы хотите 1 цикл, который закончится, если вы введете правильное значение, если я не ошибаюсь
Который будет выглядеть примерно так:
Scanner scan = new Scanner(System.in);
String potentialp;
System.out.println("Please enter a potential palindrome: ");
potentialp = scan.nextLine();
while (!yespalin(potentialp)){
System.out.println("That string is not a palindrome, please enter another: ");
potentialp = scan.nextLine();
}
System.out.println("That string is a palindrome");
Надеюсь, это было полезно.