Как проверить строку на палиндром в java?

Пользователь

от carlo.cummerata , в категории: Java , 3 года назад

Как проверить строку на палиндром в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 3 года назад

@carlo.cummerata Алгоритм довольно таки прост и нужно перевернуть строку используя цикл или StringBuilder в Java и затем просто проверить на равенство строк и тем самым проверить является ли строка палиндромом или нет в Java, ниже пример кода:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
public class Main {

    public static void main(String args[]) {
        String str = "мадам";

        StringBuilder reverseStr = new StringBuilder();
        // вставить строку в StringBuilder
        reverseStr.append(str);
        // переворачиваем строку
        reverseStr.reverse();

        // Проверяем игнорируя регистр
        if (str.equalsIgnoreCase(reverseStr.toString())) {
            System.out.println(str + " строка палиндром.");
        } else {
            System.out.println(str + " строка не палиндром.");
        }
        // Вывод: мадам строка палиндром.
    }
}


Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от steve , 2 года назад

@carlo.cummerata 

Один из способов проверить строку на палиндром в Java - это сравнить ее с ее обратной строкой. Это можно сделать с помощью следующего кода:

1
2
3
public static boolean isPalindrome(String str) {
  return str.equals(new StringBuilder(str).reverse().toString());
}


В этом примере мы создаем объект StringBuilder из входной строки, а затем используем метод reverse для получения ее обратной строки, которую мы сравниваем с входной строкой с помощью метода equals. Если строки равны, то это палиндром, и функция возвращает true.