Использование только стандартной библиотеки Java, что является простым механизмом для объединения строк до предела и добавления многоточия, когда предел приводит к более короткой строке?Объединение строк с ограничением
Эффективность желательно. Объединение всех строк, а затем использование String.substring()
может потреблять чрезмерную память и время. Механизм, который может использоваться в конвейере потока Java 8, является предпочтительным, так что строки за пределом никогда не могут быть созданы.
Для моих целей, я был бы счастлив с лимитом, выраженной в любой:
- Максимальное количество строк, чтобы присоединиться к
- Максимальное количество символов в результате, в том числе любые символы разделителей.
Например, это один из способов обеспечить максимальное количество присоединенных строк в Java 8 со стандартной библиотекой. Есть ли более простой подход?
final int LIMIT = 8;
Set<String> mySet = ...;
String s = mySet.stream().limit(LIMIT).collect(Collectors.joining(", "));
if (LIMIT < mySet.size()) {
s += ", ...";
}
Этот вопрос НЕ просит «рекомендовать или найти книгу, инструмент, библиотеку программного обеспечения, учебник или другой ресурс вне сайта». –