Czy istnieje metoda Java 8 lub łatwy sposób, który zwraca wartości Enum jako lista String, jak:Get wartości enum lista String w Java 8
List<String> sEnum = getEnumValuesAsString();
Czy istnieje metoda Java 8 lub łatwy sposób, który zwraca wartości Enum jako lista String, jak:Get wartości enum lista String w Java 8
List<String> sEnum = getEnumValuesAsString();
Można to zrobić (pre-Java 8):
List<Enum> enumValues = Arrays.asList(Enum.values());
lub
List<Enum> enumValues = new ArrayList<Enum>(EnumSet.allOf(Enum.class));
Korzystanie z funkcji Java8 można odwzorować każdy stały na jego imię:
List<String> enumNames = Stream.of(Enum.values())
.map(Enum::name)
.collect(Collectors.toList());
Świetna odpowiedź. Czy istnieje jakaś wada wykorzystania tablicy stream over do uwzględnienia w środowisku wykonawczym? – Hannes
Nie. Korzystanie z strumieni może poprawić wydajność, ponieważ może być przetwarzane równolegle. –
Możesz także skrócić 'asList (...). Stream()' używając 'Stream.of' lub' Arrays.stream'. – Radiodef
Co to znaczy uzyskać wartość wyliczenia jako ciąg znaków? Czy chcesz listę nazw stałych enum? – user2357112
@ user2357112, wartości jako 'lista String'a –
To nie odpowiada na pytanie. Wartości wyliczeń nie są ciągami. – user2357112