Super Reduced String
Doc comments for public methods are indispensable.

I'd probably just use a foreach-loop and a DIY stack:

/** @return input stripped of all abutting identical characters */
static String solve(String input) {
    char []remains = new char[input.length()];
    int top = -1; // highest valid index

    for (char c: input.toCharArray())
        if (top &lt; 0 || c != remains[top])
            remains[++top] = c;
        else
            --top;

    return top &lt; 0 ? "Empty String"
        : new String(remains, 0, top+1);
}