Подтвердить что ты не робот

Заглавие первой буквы в строке

У меня возникли проблемы с преобразованием первой буквы в "Капитал" в строке:

rackingSystem.toLowerCase(); // has capitals in every word, so first convert all to lower case
StringBuilder rackingSystemSb = new StringBuilder();
rackingSystemSb.append(rackingSystem);
rackingSystemSb.setCharAt(0, Character.toUpperCase(rackingSystemSb.charAt(0))); 
rackingSystem = rackingSystemSb.toString();

Это не работает.

Любые предложения?

4b9b3361

Ответ 1

Попробуйте сделать:

rackingSystem = rackingSystem.toLowerCase();

Вместо:

rackingSystem.toLowerCase(); 

Строки неизменяемы, вы должны переназначить результат toLowerCase().

Легче, хотя, если ваша строка больше длины 2):

rackingSystem = rackingSystem.substring(0,1).toUpperCase() + rackingSystem.substring(1).toLowerCase();

Ответ 2

StringBuilder rackingSystemSb = new StringBuilder(rackingSystem.toLowerCase());
rackingSystemSb.setCharAt(0, Character.toUpperCase(rackingSystemSb.charAt(0)));
rackingSystem = rackingSystemSb.toString();