list遍历的时候为什么报类型转换异常

list遍历的时候为什么报类型转换错误
LinkedList<Integer> ids是前台传过来的 里面有值
MyFile myFile = new MyFile();
Iterator<Integer> iter = ids.iterator();
while (iter.hasNext()) {
myFile = officialDocumentService.queryFileById(iter.next());
deleteFile(myFile.getPath());
}

这段代码在做myFile = officialDocumentService.queryFileById(iter.next());
queryFileById方法是这么定义的 public MyFile queryFileById(int id);

这句的时候 报类型转换错误
java.lang.String cannot be cast to java.lang.Integer

各种iter.next().intValue()或者Integer.parseInt(iter.next())或者(int)iter.next()都试过了 都是报类型转换错误
------解决方案--------------------
你的ids里面就有string了,debug一下
------解决方案--------------------
你用的对象去接收Iterator<Integer> int类型的集合
------解决方案--------------------
package shi;

import java.util.Iterator;
import java.util.LinkedList;

public class Test4 {

public static void main(String[] args){
LinkedList<Integer> ids = new LinkedList<Integer>();
ids.add(1);
ids.add(2);
ids.add(3);
Iterator<Integer> iterator=ids.iterator();
while(iterator.hasNext()){
//System.out.println(iterator.next());
saywhat(iterator.next());
}
}

public static void saywhat(int i){
System.out.println(i);
}
}


模拟下没有问题,把代码贴全,是不是描述的不准确啊
------解决方案--------------------
目测你的ids这个List不是List<Integer>而是List<String>,这么写吧
Iterator<String> iter = ids.iterator();
while (iter.hasNext()) {
    myFile = officialDocumentService.queryFileById(Integer.parseInt(iter.next()));
    deleteFile(myFile.getPath());
}