Предпочтения всегда получают значение по умолчанию

У меня есть setPreference void, чтобы получить некоторые значения и поместить их в файл настроек. В нем также есть немного кода, чтобы сохранить его в файле, а не в каком-то случайном месте.

private void setPreference(String type, String value) {
    chinesePrefs = Preferences.userRoot().node(this.getClass().getName());
    chinesePrefs.put(type, value);
}

Затем я пытаюсь получить целое число TotalPlayers (из класса Main), вызывая getTotalPlayers (который находится в том же классе, что и setPreference).

int getTotalPlayers() {
    int defaultValue = 6;
    chinesePrefs = Preferences.userRoot().node(this.getClass().getName());
    TotalPlayers = chinesePrefs.getInt("totalPlayers", defaultValue);
    return TotalPlayers;
}

Он всегда будет возвращать значение по умолчанию. Что тут происходит? :(

вы не инициализировали final player как int.

preciousbetine 17.12.2018 21:27

Он инициализируется частным int TotalPlayers; над обеими этими двумя функциями.

Rygorystyczny 17.12.2018 21:53

1. Замените this.getClass().getName() на Main.class.getName() в обоих местах, чтобы убедиться, что вы каждый раз работаете с одним и тем же узлом. 2. Распечатайте type и value. Очевидно, что type должен быть "totalPlayers", тогда как value должен быть последовательностью цифр.

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

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