Как сделать копию строки с помощью целочисленной переменной?

332
25 декабря 2016, 19:56

К примеру, есть строка и целочисленная переменная:

String name = "Alex";
int num = 5;

И теперь каким образом можно повторить строку, чтобы получилось следующее:

AlexAlexAlexAlexAlex
Answer 1

Например, так:

String name = "Alex";
int num = 5;
StringBuilder stringBuilder = new StringBuilder();
for (int i=0; i<num; i++) {
    stringBuilder.append(name);
}
String result = stringBuilder.toString();

В цикле num раз добавляете к результирующей строке заданную строку.

StringBuilder вместо String здесь используется для того, чтобы при каждой конкатенации не создавать новый объект (так как String является immutable).

В Java 8 можно получить требуемое вот так:

String name = "Alex";
int num = 5;
String result = String.join("", Collections.nCopies(num, name));
Answer 2

Самый тупой способ:

String s = "";
for (int i = 0; i < num; ++i)
    s += name;
Answer 3

Как вариант, можно попробовать так:

String str = "hello";
int count = 10;
String result = Stream.generate(() -> str).limit(count).collect(Collectors.joining());
READ ALSO
Генерация букв на Java

Генерация букв на Java

Как записать генерацию рандомных букв?

950
Реализовать обход foreach для своей коллекции

Реализовать обход foreach для своей коллекции

В учебных целях нужно было самостоятельно реализовать связные списки и сделать так, чтобы был возможен обход через foreachКак я понял, нужно...

424
Как добавить в архив папку, используя Zip4j и OutputStream

Как добавить в архив папку, используя Zip4j и OutputStream

Я пытаюсь добавить в архив папку вот так (в соответствии с документацией):

379
Печать через USB из термо-принтера Java

Печать через USB из термо-принтера Java

Хочу печатать чеки из термо-принтера VKP80II с Java через USBДолго насиловал гугл, на русском ничего не нашел

391