Распечатка всех значений перечисления как типа String в Java - PullRequest
0 голосов
/ 06 мая 2020

У меня есть перечисление со значениями перечисления. Я хочу распечатать только список значений перечисления.

Не только перечисление. Я читал о Value Of, но вижу, что это неправильный способ go на нем.

Вот что я хочу напечатать:

People Out

People In

Вот мое перечисление со значениями в нем. Я добавил конструктор.

public enum People {
    OUT("People out"),
    IN("People in");

private final String name;

People(String name) {
    this.name = name;
  } 
}

Метод для получения перечислений:

public String retrieveEnumValues() {
        return Stream.of(People.values()).
                map(People::name).collect(Collectors.joining("\n"));

    }

Что я здесь делаю не так?

Ответы [ 2 ]

0 голосов
/ 14 мая 2020

name - это поле, поэтому вы не можете использовать с ним ссылки на методы. Для доступа к имени вам понадобится .map(p -> p.name), поскольку у вас нет геттеров.

0 голосов
/ 06 мая 2020

People::name относится к стандартному имени метода перечисления (), вы должны предоставить геттер для своего поля name и использовать его People::getName.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...