Насколько я знаю, Итератор является объектом, тип которого определяется во время его объявления, но который также поставляется с двумя другими способами: hasNext()
и next()
. Итак, помимо этих двух методов, если я пишу Iterator<Integer> iterator
, то итератор должен вести себя как объект Integer. Однако, когда я пытаюсь использовать iterator.intValue()
, я получаю сообщение об ошибке.Итератор как целое число
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
The method intValue() is undefined for the type Class<capture#1-of ? extends Iterator>
Syntax error, insert "}" to complete Block
Вот полный код:
Iterator<Integer> iterator = content.iterator(); //content is a HashSet<Integer> object
System.out.println(iterator.intValue());
while(iterator.hasNext())
{
iterator.next();
System.out.println(iterator);
}
На Итераторе нет метода intValue(). вы можете использовать 'if (iterator.hasNext()) {iterator.next(). intValue()}' – SomeDude
"Итератор должен вести себя как объект Integer" Нет, это неправильно. – QBrute