LINUX.ORG.RU

[java] замена символов в строке

 


0

0

Есть строка и массив строк. В строке хочу заменить цифры начинающиеся с $ на элементы массива:

String xyz = "текст $1, текст $2, текст $3";

String[] numbers = new String[3]; 
numbers[0] = "один"; 
numbers[1] = "два"; 
numbers[2] = "три";
Пытаюсь как то так:
for (int i = 0; i < numbers.length; i++) {
    xyz.replace("$"+(i+1), numbers[i]);
}
ЧЯДНТ?


Прочитай уже описание этого метода.

Hint: String — неизменяемый объект.


Может, тебе следует какое-нибудь систематизированное пособие по Java взять?

proud_anon ★★★★★
()
Ответ на: комментарий от bbk123

это стрельба из дерного оружия по тараканам - много фуррора и мало толку. Решается линейным посиком и StringBuilder

wfrr ★★☆
()
Ответ на: комментарий от wfrr

> это стрельба из дерного оружия по тараканам - много фуррора и мало толку. Решается линейным посиком и StringBuilder

Нет тут ничего ядерного или тяжёлого. MessageFormat разработан для решения именно таких задач. Более того, код, использующий MessageFormat, будет проще и значит менее подвержен ошибкам.

bbk123 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.