Ошибка получения значения в классе enum

в моем приложении я хочу создать очень простой класс перечисления, например этот:

enum class Week (val printableName: String) {
    MONDAY("Monday"),
    TUESDAY("Tuesday"),
    WEDNESDAY("Wednesday"),
    THURSDAY("Thursday"),
    FRIDAY("Friday"),
    SATURDAY("Saturday"),
    SUNDAY("Sunday")
}

и я хочу получить printablenName из активности в java, а не в котлине.

Я делаю это следующим образом:

String day = Week.FRIDAY.getPrintableName();

Однако я всегда получаю ту же ошибку:

error: package Week does not exist
String color = Week.FRIDAY.getPrintableName();

Что я забыл?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
42
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

На самом деле это не то, как вы получаете функцию получения в Java. Пожалуйста, обратитесь к этому: https://kotlinlang.org/docs/java-to-kotlin-interop.html#функции-уровня-пакета
В основном вы должны добавить имя своего пакета, например packageName.Week.getPrintableName()

Ответ принят как подходящий

Напишите полный путь из root вашего проекта в поле дня или цвета.

String day = pathFromRoot.Week.FRIDAY.getPrintableName();

Я пробую предложенное решение: String day = com.sergio.testapplication.Week.FRIDAY.getPrintableName(); но я получаю ту же ошибку. Это полный путь, но я продолжаю получать ту же ошибку.

Sergio76 24.03.2022 15:31

Работает, спасибо

Sergio76 24.03.2022 15:54

Другие вопросы по теме