Я пытаюсь сортировать символы в алфавитном порядке в строке, и когда я запускаю свой код в следующем примере: hello
, я получаю: heeeeeeeeeheeeelheeellhee
вместо ehllo
. Может ли smb предложить мне, что я должен исправить в своем коде? Заранее спасибо!Сортировка символов внутри строки
public static void main(String[] args)
{
String result = "";
Scanner kbd = new Scanner(System.in);
String input = kbd.nextLine();
char[] myArray = input.toCharArray();
for(int i = 0; i < myArray.length; i++)
for(int j = 0; j < myArray.length; j++)
{
if(myArray[i] > myArray[j])
{
char temp = myArray[j];
myArray[j] = myArray[i];
myArray[i] = temp;
result += myArray[i];
}
else
result += myArray[i];
}
System.out.println(result);
}
Каким должен быть результат? – immibis
'result + = myArray [i];' <- Не нужно. Вместо этого, как только вы закончите сортировку, создайте новую 'String' из' myArray' – MadProgrammer
. Увлекательным способом сделать это было бы поместить все символы в TreeSet, а затем перебрать содержимое. – dnault