Tôi có một số EnumSet
và muốn chuyển đổi qua lại thành/từ một mảng nguyên thủy boolean. Nếu nó hoạt động tốt hơn, tôi có thể làm việc với một List
thay vì một mảng, và/hoặc Boolean
đối tượng thay vì nguyên thủy boolean.Chuyển đổi giữa EnumSet và mảng giá trị boolean
enum MyEnum { DOG, CAT, BIRD; }
EnumSet enumSet = EnumSet.of(MyEnum.DOG, MyEnum.CAT);
Những gì tôi muốn nhận được ở đầu bên kia là một mảng trông như thế này:
[TRUE, TRUE, FALSE]
Câu hỏi này ở đây cũng tương tự như thế này, Convert an EnumSet to an array of integers. Sự khác biệt:
- boolean hoặc
Boolean
so với số nguyên (rõ ràng) - Tôi muốn tất cả các thành viên của enum để được đại diện, với một
TRUE
cho mỗi phần tử enum bao gồm trongEnumSet
vàFALSE
cho mỗi yếu tố đó sẽ bị loại trừ từ sốEnumSet
. Mảng của Câu hỏi khác chỉ bao gồm các mục được tìm thấy trong sốEnumSet
. (Quan trọng hơn)
Cảm ơn. Tôi đã tò mò về cú pháp lambda/stream fancier nhưng nó là tốt để hiển thị cú pháp đơn giản nhưng chắc chắn cũ. –
Tôi lấy tự do viết mã ví dụ để đi theo hướng khác, từ mảng đến EnumSet. Mã này dựa trên một số mã hoạt động của tôi, nhưng được sửa đổi để phù hợp với ví dụ của bạn ở đây. Vì vậy, tôi không phải là 100% nếu mã của tôi được đăng ở đây là chính xác. –
@BasilBourque, 'QuarterHour' là gì? – Andrew