Метод ReplaceAll не работает во второй раз - PullRequest
0 голосов
/ 02 июля 2019

Я создаю систему размещения предметов Minecraft.По сути это похоже на цикл по 100 строк типа «Привет,% employee, добро пожаловать в% company».и я бы заменил эти% сотрудников их именем и% компании на названия компаний.

Но в моем случае я попытался заменить их, но после второго объекта это не очень хорошо работало.

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

Я попытался отладить, используя async, все, что я мог себе представить.Но не повезло.

public ItemStack getMailItem(Mail m) {
    ItemStack item = null;
    if (m.isRead()) {
        item = items.get(ItemData.READ_MAIL);
    }
    else {
        item = items.get(ItemData.MAIL);
        item.addUnsafeEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 1);
        item.addItemFlags(ItemFlag.HIDE_ENCHANTS);
    }
    ItemMeta meta = item.getItemMeta();
    String name = meta.getDisplayName();
    name = name.replaceAll("%a", m.getSender());
    name = name.replaceAll("%b", m.getDate());
    Utility.broadcast("Date: " + m.getDate());
    meta.setDisplayName(Utility.TransColor(name));
    ArrayList<String> msgs = new ArrayList<String>();
    for (String str : m.getMessages()) {
        msgs.add("&f" + str);
    }
    meta.setLore(Utility.TransColor(msgs));
    item.setItemMeta(meta);
    NBTItem nbt = new NBTItem(item);
    nbt.setString("c2e", m.getUniqueID().toString());
    return nbt.getItem();
}

В основном это работает первый раз, но во второй раз не работает.Он будет использовать имя первого отправителя и дату с первого письма.

Я ожидаю, что, например, у него есть такие данные: Джонни, 5 часов утра, Марк, 5 часов вечера, Альберт, 13 часов

Но когда это будет сделано:

Джонни, 5Джонни, 5 часов утра Джонни, 5 часов утра

Он заменен, но не использует правильную строку.

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

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