Вы забыли уменьшить n
и, следовательно, while (n > 1)
останется true
навсегда. Уменьшите значение n
следующим образом, и ваша программа будет работать должным образом:
while (n > 1) {
for (int i = 0; i < (stringArr.length - 1); i++) {
for (int j = i + 1; j > 0; j--) {
if (stringArr[j] < stringArr[j - 1]) {
temp = stringArr[j - 1];
stringArr[j - 1] = stringArr[j];
stringArr[j] = temp;
}
}
}
n--;
}
В примечании можно заменить следующий фрагмент кода
char[] stringArr = new char[inputString.length()];
for (int i = 0; i < inputString.length(); i++) {
stringArr[i] = inputString.charAt(i);
}
только одной строкой следует
char[] stringArr = inputString.toCharArray();