Назад к задачам
Условие задачи

Необходимо написать функцию compress, которая преобразует входную строку, заменяя последовательные одинаковые символы на сам символ и количество его повторений, если повторений больше одного. Одинокие символы оставляются без изменений. Учёт регистра обязателен.

public class StringTask {

    public static void main(String[] args) {
        runTest("aabccccaaa", "a2bc5a3");
        runTest("abcdef", "abcdef");
        runTest("AAaaBB", "A2a2B2");
    }

    public static void runTest(String src, String exp) {
        String result = compress(src);
        if (!result.equals(exp)) {
            System.out.printf("Test failed for input: %s%n, expected: %s, actual: %s%n", src, exp, result);
        } else {
            System.out.printf("Test passed for input: %s%n", src);
        }
    }

    public static String compress(String src) {
        //
    }
}