Getting all names in an enum as a String[]

前端 未结 21 1382
执笔经年
执笔经年 2020-12-01 03:50

What\'s the easiest and/or shortest way possible to get the names of enum elements as an array of Strings?

What I mean by this is that if, for example,

21条回答
  •  抹茶落季
    2020-12-01 04:44

    Very similar to the accepted answer, but since I learnt about EnumSet, I can't help but use it everywhere. So for a tiny bit more succinct (Java8) answer:

    public static String[] getNames(Class> e) {
      return EnumSet.allOf(e).stream().map(Enum::name).toArray(String[]::new);
    }
    

提交回复
热议问题