
07.02.2016, 02:59
|
|
Участник форума
Регистрация: 24.11.2015
Сообщений: 165
С нами:
5509192
Репутация:
1457
|
|
Сообщение от Visor123
Неправильный ответ, правильный ответ решить вопрос в частном порядке убрав общее решение, это позволит переложить время выполнения на время клонирования решения в частных имплементациях.
То есть, чтобы было понятно: этот класс перестанет существовать, и время его выполнения при любых вариантах будет равен 0.
.................. (спасибо администрации за смайлики)
version 0.1
delete method append(Object);
add new method append(Object...)
Сообщение от Спойлер
Код:
[CODE]
public class TextBuilder {
class Entry {
String value;
Entry next;
Entry(String value) {
this.value = value;
this.next = null;
}
}
int size = 0;
Entry head;
Entry tail;
public TextBuilder() { }
public TextBuilder append(String value) {
size += value.length();
if(head == null)
head = tail = new Entry(value);
else
tail = (tail.next = new Entry(value));
return this;
}
public TextBuilder append(Object...value) {
int i = 0;
if(head == null && value.length > 0) {
String str = value[0].toString();
size += str.length();
head = tail = new Entry(str);
i++;
}
for(; i
Код:
Код:
protected void showMainPage(L2PcInstance player)
{
NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
TextBuilder reply = new TextBuilder();
reply
.append(
"",
getName(),
"",
"[ ",
getName(),
" ]",
"",
"",
"
Engine instances",
""
);
for (L2EventGroupEngineInstance event : _eventInstances.values())
reply
.append(
"",
event.getName(),
"",
"",
"",
""
);
reply
.append(
"",
"",
"",
"",
""
);
adminReply.setHtml(reply.toString());
player.sendPacket(adminReply);
// Send a Server->Client ActionFailed to the L2PcInstance in order to avoid that the client wait another packet
player.sendPacket(ActionFailed.STATIC_PACKET);
}
|
|
|