Вы должны просто сделать следующее:
public class Test implements Iterable<Integer>{
Удалить общий тип все вместе.
Ваш класс Test
не является универсальным вообще.Это просто реализация универсального интерфейса.Объявление универсального типа не обязательно.Это также поможет удалить то общее предупреждение, которое вы получили.
@ Eugene дает хорошее замечание.Если вам действительно нужен универсальный тип Test
, вы должны объявить Test
в качестве универсального итератора:
Вы должны просто сделать следующее:
public class Test implements Iterable<Integer>{
Удалить универсальный тип все вместе.
Ваш класс Test
не является универсальным.Это просто реализация универсального интерфейса.Объявление универсального типа не обязательно.Это также поможет удалить то общее предупреждение, которое вы получали.
public class Test<T> implements Iterable<T>{
И затем убедитесь, что вы сделали Test
универсальным, когда создаете его экземпляр.
Test<Integer> t = new Test<Integer>;
Тогдавызовы на for(Integer i: t)
будут компилироваться.