如何在读取文件时添加到Java LinkedList?

如何在读取文件时添加到Java LinkedList?,java,loops,oop,linked-list,java.util.scanner,Java,Loops,Oop,Linked List,Java.util.scanner,我有以下代码: public static void main(String args[]) { int maxSize = 10; LinkedList<someObject> fifoList = new LinkedList<someObject>(); int item = 0; int p = 0; try { scanner = new Scanner(myFile); while(scanner.hasNextLine()) {

我有以下代码:

public static void main(String args[]) {

int maxSize = 10; 
LinkedList<someObject> fifoList = new LinkedList<someObject>();
int item = 0; 
int p = 0; 

try {
    scanner = new Scanner(myFile);
    while(scanner.hasNextLine()) {

        String line = scanner.nextLine();
        item = Integer.parseInt(line);
        
        if(p == 0)
        {
            someObject myObj = new someObject(); 
            //if the linked list is empty, add the item to the head of list
            if(fifoList.isEmpty()){
                myObj.setItem(item);
                fifoList.add(myObj);
            }
            else{
                //as long as the size of the list is less than maxSize
                int pointer = 0; 
                if(fifoList.size() < p0Frames){
                    //if the item is not already in the list:
                    if(fifoList.get(pointer).getItem() != item){
                        myObj.setItem(item);
                        fifoList.add(myObj);
                    }
                }
                pointer++;
            }
        }               
    }
}
catch(FileNotFoundException e) {
    System.out.println("File was not found");
    e.printStackTrace();
}

for(someObject node: fifoList){
    System.out.println(node.getItem());
}

}
通过这个文件输入,我希望我的LinkedList包含13、14、19、17、18。但是,当我打印出来时,它会打印出来

13, 14, 14, 19, 17, 17, 17, 18, 17

为什么我的逻辑只检测第一个数字(13)的重复项,而忽略后面的所有重复项?我还检查了指针的值,它从不改变,所以我猜这也是一个错误造成的。但是,我已经做了几个小时了,真的不知道如何解决它。任何帮助都将不胜感激。

检测重复项的逻辑需要通过
fifoList
中的元素进行循环,当前每个元素的
指针的值都重置为0,因此只检查第一个值,因此,以下所有不等于
13
的值都被成功添加

代码可固定如下:

someObject myObj=new someObject();
//如果链接列表为空,请将该项目添加到列表的标题中
if(fifoList.isEmpty()){
myObj.setItem(项目);
添加(myObj);
}
else if(fifoList.size()=0&&!found;i--){
if(fifoList.get(i).getItem()==item){
发现=真;
}
}
如果(!found){//添加缺少的值
myObj.setItem(项目);
添加(myObj);
}
}
输出:

13
14
19
17
18

我有14个编译器错误。@很抱歉,这不是我的实际代码。这是我在文件中的一个表示。请不要使用表示代码!使用您需要帮助的真实代码。我们想帮助你,你却在妨碍我们。
13, 14, 14, 19, 17, 17, 17, 18, 17