Помогите деление lore по количеству слов

  • Автор темы Автор темы Chupaaa
  • Дата начала Дата начала

Chupaaa

Новичок
Пользователь
Баллы
21
Имя в Minecraft
xChupa
Я снова здесь, привет всем.
Я в lore предмета прописываю list со списком игроков. В описании предмета получается всего одна строка с этими игроками, а если игроков много, то выглядит очень ужасно.
Как можно сделать, чтобы lore автоматически делилось, допустим при 7 слов в строке.
Или вообще по-другому сделать, но красиво. ВОт скрин как получается:upload_2019-5-26_23-47-39.png
 
На так сделай в цикле условие, что при каждой 7 итерации - добавляешь текущую линию в лор и создаешь новую для заполнения следующими словами. Логически подумай как это можно сделать, полезно кстати.
 
Код:
    public static List<String> s(String st, int spl) {
        String[] arrWords = st.split(" ");
        ArrayList<String> list = new ArrayList<String>();
        StringBuilder sb = new StringBuilder();
        int index = 0;
        int length = arrWords.length;
        while (index != length) {
            if (sb.length() + arrWords[index].length() <= spl) {
                sb.append(arrWords[index]).append(" ");
                index++;
            } else {
                list.add(sb.toString());
                sb.setLength(0);
            }
        }
        if (sb.length() > 0) {
            list.add(sb.toString());
        }

        sb = null;
        return list;
    }
 
На так сделай в цикле условие, что при каждой 7 итерации - добавляешь текущую линию в лор и создаешь новую для заполнения следующими словами. Логически подумай как это можно сделать, полезно кстати.
Спасибо за совет.
 
Код:
    public static List<String> s(String st, int spl) {
        String[] arrWords = st.split(" ");
        ArrayList<String> list = new ArrayList<String>();
        StringBuilder sb = new StringBuilder();
        int index = 0;
        int length = arrWords.length;
        while (index != length) {
            if (sb.length() + arrWords[index].length() <= spl) {
                sb.append(arrWords[index]).append(" ");
                index++;
            } else {
                list.add(sb.toString());
                sb.setLength(0);
            }
        }
        if (sb.length() > 0) {
            list.add(sb.toString());
        }

        sb = null;
        return list;
    }
Спасибо, попробуем 🙂
 
Назад
Верх