Как сказал другой ответ, x.charAt (0) не является переменной.
Так что:
x.charAt(0) = x.charAt(x.length()-1);
не сработает.
In Java Строки не подлежат изменению. Поэтому, если вы действительно хотите написать алгоритм, который должен изменять символы строки на месте, я бы предложил использовать StringBuilder:
StringBuilder sb = new StringBuilder(x);
sb.setCharAt(0, x.charAt(x.length()-1));
Примечание: x.charAt (x.length () ) находится за концом String, поскольку индексы начинаются с 0. Вот почему я добавил -1.
Когда вы закончите редактировать свой StringBuilder , вы можете его преобразовать обратно к строке вроде этого:
result = sb.toString();