<идентификатор> ожидаемая ошибка времени компиляции Java с методом add в HashSet

1

Я посмотрел, но не могу найти ничего подобного.

Я пытаюсь создать набор целых чисел, и мне нужно сначала добавить "2" к нему.

private static HashSet<Integer> pSet = new HashSet<Integer>();

pSet.add(new Integer(2));

          ^

По какой-то причине это дает мне ошибку времени компиляции, когда ожидается идентификатор, где я указал.

Что вызывает это и как я могу это исправить?

Теги:
hashset
compiler-errors

2 ответа

0
Лучший ответ

Весь код должен находиться внутри метода или инициализатора. Вы можете добавить значение в pSet через статический блок инициализации:

private static HashSet<Integer> pSet = new HashSet<Integer>();

static {
    pSet.add(new Integer(2));
}

Кроме того, бокс 2 не нужен, pSet.add(2) будет работать нормально.

  • 0
    Спасибо! Это была моя проблема.
0

Если вы хотите инициализировать pSet с начальным значением напрямую, вы можете просто выполнить:

private static Set<Integer> pSet = new HashSet<Integer>(Arrays.asList(2));

Ещё вопросы

Сообщество Overcoder
Наверх
Меню