Arraylist java删除下一个元素

时间:2015-10-18 22:49:47

标签: java arraylist

在我的问题中,我有一个案例,我想在我指定的单词后删除元素。这是我的代码,我删除元素本身,但如何删除元素后。它有点棘手,因为我有一个while循环,从文件中读取所有输入。然后它将其存储在名为words的数组列表中。

 File file1 = new File(args[0]);
        File file2 = new File(args[1]);
        Scanner input = new Scanner (file1);
        while (input.hasNext())
        {
            String word = input.next();
            words.add(word);
            if(word.contains("e")){
                words.remove(word);
            }
        }

输出: [测试,1,3,3,-1,-2,3,测试,2,1,2,1,-1,测试,3,5,5,5,4,-2,1,3, -2,-5,1,4,4,-2,-3,-3,4,5,1,-2,5,3,-2,5,2,3,-4,测试,4 ,3,5,1,2,3,2,-3,1,-2,-1,-3,-2,3,-1] 我想在每个地方测试后删除下一个元素并测试它自己。

2 个答案:

答案 0 :(得分:0)

 File file1 = new File(args[0]);
    File file2 = new File(args[1]);
    Scanner input = new Scanner (file1);
    while (input.hasNext())
    {
        String word = input.next();
        if(!word.contains("e"))
             words.add(word);
        else
             input.next();
    }

这样的事情?它将检查该单词是否包含e拳头,如果不包含,则会将其添加到列表中。但如果确实如此,它将不会添加它,它也只会读取下一个输入并且不执行任何操作。

答案 1 :(得分:0)

可能是语法问题,但这是我要做的,警告:psudocode

var inputArray = input.split(',');
var removeValue = 0;

//itterate through array delimited by commas
for (i = 0; i < inputArray.count(); i++)
{
     //if flagged for removal, remove
     if (removeValue = 1)
        inputArray.removeAt(i);

     //flag next value for removal or not
     if (inputArray[i] == 'test')
       removeValue = 1;
     else
       removeValue = 0;
}