[Java] Сгенерировать строчку из одинаковых символов заданной длины
$s ='*' x 100
new string('*', 100);
$s = str_pad('',100,'*');
или
$s = str_repeat('*', 100);
new std::string(100, '*');
for ($s=''; strlen($s) <= 100; $s .= '*') {}
$s.="*"
^)
я уж подправил %)
Пока что я делаюНу, ты можес соптимизировать процесс. Но, по-ходу, других решений нет.
...
и чувствую себя при этом полным идиотом...
есть подозрение, что через массив чаров будет быстрее
Итого, в данном случае:
char[] cs = new char[100];
Arrays.fill(cs, '*');
String s = new String(cs);
Еще можно попробовать оптимизировать исходный пример аналогично алгоритму быстрого возведения в натуральную степень...
mov al, '*'
mov dx, destination
mov cx, total
rep stosb
вряд ли что-нибудь есть.
SSE сейчас в моде
for (int i = 0; i < 100; i++) {Мелкомягкие CString'и тут будут работать с квадратичной скоростью из-за append.
sb.append('*');
}
А в STL есть конструктор такой...
А Java сосет, как обычно.
AFAIK, STL-конструктор делает ровно такой же код:
char[] cs = new char[100];
Arrays.fill(cs, '*');
String s = new String(cs);
String s = "*************************************************************************************************************************************************"
It's OK
String s="*".repeat(100);
Оставить комментарий
enochka1145
Как сделать на Java попроще? Хочется, чтобы выглядело типа: Пока что я делаю и чувствую себя при этом полным идиотом...Желающим поприкалываться над Java - welcome, но только с условием, что предоставите аналог на своём языке.