Цепочки строк в Java - PullRequest
       1

Цепочки строк в Java

0 голосов
/ 18 марта 2011

допустим, я хочу создать новую строку во время цикла for,

Новая строка будет изменением существующей строки, которая будет изменяться в зависимости от условий и позиций цикла.

Как мне вставить в существующую строку новые символы?

Я просмотрел всю сводку методов, которая относится к строкам, и не получил там своего ответа.

Редактировать: Первоначально я опубликовал ссылку на java 4 методы по ошибке. Я использую новейшую версию Java.

Спасибо

Ответы [ 4 ]

10 голосов
/ 18 марта 2011

Либо используйте StringBuilder или String.concat(String)

Пример:

StringBuilder sb = new StringBuilder();
Iterator<Integer> iterator =
    Arrays.asList(1, 2, 3, 4, 5, 6, 7).iterator();
if(iterator.hasNext()){
    sb.append(iterator.next());
    while(iterator.hasNext()){
        sb.append(',').append(iterator.next());
    }
}
final String joined = sb.toString();

И о поиске в Google: Google почти всегда будет возвращать древние версии 1.4.если вы ищете ключевые слова, как имя класса в одиночку.Ищите classname /6, например, StringBuilder /6, и вы получите текущую версию.

3 голосов
/ 18 марта 2011

Как я могу вставить в существующую строку новые символы?

Вы не можете.Строки Java предназначены для неизменяемости.Вам придется либо использовать изменяемый класс, например StringBuilder, либо заменить исходную строку новой измененной версией.

2 голосов
/ 18 марта 2011

используйте StringBuffer по соображениям производительности:

// new StringBuffer
StringBuffer buf = new StringBuffer("bla blub bla");

// insert string
buf.insert(9, " huhu ");

// append strings
buf.append(" at the end");

// Buffer to string
String result = buf.toString();
1 голос
/ 18 марта 2011

Попробуйте StringBuffer или StringBuilder. Вы должны кодировать в Java 1.4?

Вы также можете попробовать это (хотя я настоятельно рекомендую подход StringBuilder/StringBuffer):

String s = "somestring";
s = s.substring(0, 4) + " " + s.substring(4); //result: "some string"

Вам нужно как-то найти индексы для методов substring() (используя indexOf или lastIndexOf).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...