Задать вопрос
@Roktober
Люблю Linux && Python

Изменение английских букв «с», «а», «е», «у», «к», «o», «p», «x» на русские в составе слова?

Изменение английских букв «с», «а», «е», «у», «к», «o», «p», «x» на русские в составе слова
Хотелось бы найти красивое решение данного вопроса
Пока приходит в голову обычным реплейсом
Очень важна скорость работы
  • Вопрос задан
  • 183 просмотра
Подписаться 1 Простой 6 комментариев
Решение пользователя koperagen К ответам на вопрос (3)
@koperagen
import java.util.Map;

public class Converter {
    static final Map<Character, Character> map = Map.of('y', 'у', 'c', 'с', 'x', 'х', 'a', 'a'); // Дополнить

    public static String replaceSymbols(String string, Map<Character, Character> map) {
        final var sb = new StringBuilder(string.length());
        for (int i = 0; i < string.length(); i++) {
            sb.append(map.getOrDefault(string.charAt(i), string.charAt(i)));
        }
        return sb.toString();
    }

    public static void main(String[] args) {
        System.out.println(replaceSymbols("yxcayxcattttt", map)); // ухсaухсattttt
    }
}
Ответ написан