У меня есть EnumSet
и вы хотите преобразовать back-and-forth в/из массива булевых примитивов. Если он работает лучше, я мог бы работать с List
вместо массива и/или Boolean
объектов, а не булевых примитивов.Преобразование между EnumSet и массивом логических значений
enum MyEnum { DOG, CAT, BIRD; }
EnumSet enumSet = EnumSet.of(MyEnum.DOG, MyEnum.CAT);
То, что я хочу, чтобы на другом конце является массив, который выглядит следующим образом:
[TRUE, TRUE, FALSE]
Этот вопрос здесь похож на этот, Convert an EnumSet to an array of integers. Отличия:
- булевых или
Boolean
против целых чисел (очевидно) - Я хочу, чтобы все члены перечисления должны быть представлены с
TRUE
для каждого перечисления элементов, включенных вEnumSet
иFALSE
для каждого элемента, который исключается отEnumSet
. В массив другого Вопроса входят только элементы, найденные вEnumSet
. (Что более важно)
Спасибо. Мне было интересно узнать синтаксис lambda/streams fancier lambda/streams, но хорошо показать простой, но верный старомодный синтаксис. –
Я взял на себя смелость написать пример кода для перехода в другом направлении, от массива до EnumSet. Этот код основан на каком-то рабочем коде, но изменен в соответствии с вашим примером. Поэтому я не на 100%, если мой код, размещенный здесь, является правильным. –
@BasilBourque, что такое 'QuarterHour'? – Andrew