Как ограничить пользователя выбором только двух перечислений из списка с помощью Java Streams?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как ограничить пользователя выбором только двух перечислений из списка с помощью Java Streams?

Сообщение Anonymous »

У меня есть класс перечисления, из которого пользователь может выбрать до двух вариантов.
Если он выберет более двух, должно отобразиться сообщение об ошибке.
Я бы хотел сделайте это, используя потоки Java. Я все еще пытаюсь понять, как они работают.
На данный момент я придумал этот фрагмент кода:

Код: Выделить всё

public enum UserSkills {

HARD_WORKNG("HARD_WORKNG"),
ON_TIME("ON_TIME"),
HONEST("HONEST");

public final String value;

UserSkills(String value) {
this.value = value;
}

@Override
public String toString() {
return name() + "[" + value + "]";
}

public static List < UserSkills > of (String userSkills) {
notNull(userSkills, "userSkills cannot be null");
return Arrays.stream(values())
.flatMap(s - > {
if (values().length > 3) {
throw new IllegalArgumentException(String.format("you can only choose up to 3 user skills", userSkills));
} else {

}
}).collect(Collectors.toList());
}
}
Я не знаю, как закончить, любой совет приветствуется.

Подробнее здесь: https://stackoverflow.com/questions/696 ... va-streams
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»