Java stream как задать условие?

199
07 декабря 2020, 17:10

Есть лист Integer, я хочу сделать из него строку с помощью stream, но с условием, что если число больше 10 то добавлять к строке "> 10, ", а если меньше, то "< 10, ". Написал код для случая, если число больше 10:

String str  = list.stream().filter(i -> i > 10).map(i -> i.toString()).collect(Collectors.joining("> 10, "));

Не могу понять как добавить второе условие для "< 10, " в stream. И второй вопрос, почему joining("> 10, ") не срабатывает для последнего элемента. Буду благодарен, если поможете разобраться

Answer 1
list.stream()
    .map(i -> i < 10 ? i + " < 10" : i + " > 10")
    .collect(Collectors.joining(", "));
READ ALSO
NPE при добавлении кнопок на панель калькулятора

NPE при добавлении кнопок на панель калькулятора

Вы создаете панель после строк, в которых добавляете в нее кнопки

157
Java. gif to Image[]

Java. gif to Image[]

Есть ли способ на java разложить *gif на image[]

126
Использование Lombok

Использование Lombok

Пишу веб-приложение и при объявлении сущностей использую ломбокПриложение компилируется и работает исправно, но в коде, где происходит работа...

155
Разделить переменную на несколько, SPLIT?

Разделить переменную на несколько, SPLIT?

Я ЧАЙНИК ! Не ругайтесь сильно ! дело в том что символ делителя ещё и повторяется в самом значении несколько разНа выходе имею кашу((( Как обозначить...

107