Протестировал с введенным вами входом, отлично работает в этих случаях
private static String getDifferentChar(String data, String compareWithData) {
if(data == null || compareWithData == null) return null;
int dataLength = data.length();
int compareWithDataLength = compareWithData.length();
String differentChar = "";
int pos =0;
if(pos<dataLength && compareWithDataLength >=dataLength) {
while(pos<dataLength) {
if(data.charAt(pos) != compareWithData.charAt(pos)) {
differentChar+= "" + compareWithData.charAt(pos);
}
pos++;
}
if(compareWithDataLength > dataLength) {
differentChar+= "" + compareWithData.substring(dataLength);
}
}
return differentChar;
}