从arraylist中删除项目

时间:2013-11-22 10:33:44

标签: java arraylist

如何从我知道的arraylist中删除项目。我知道remove()方法,但它似乎不起作用;

ArrayList <String> namen = new ArrayList <> ();

    System.out.print("Voer een naam in:");

    Scanner in = new Scanner (System.in);
    for (int i = 0; i<10; i++){
        namen.add(in.next());
        int aantalNamen = namen.size();
        System.out.println(namen);
        System.out.println(aantalNamen);
        if(i == 10){
            namen.remove(9);
        }
    }

如何更改此代码才能使其正常工作?

3 个答案:

答案 0 :(得分:2)

由于i < 10循环中的条件forif中的for永远不会满足。 for成为i后,10将终止,因此条件if(i == 10){永远不会成立。这就是为什么没有任何东西从你的名单中删除。

您需要将if的条件更改为i==9或将for中的条件更改为i <= 10

答案 1 :(得分:0)

if(i == 10){
        namen.remove(9);
}

此代码在循环内部不起作用。因为当我得到10时,循环将终止。 所以你把删除代码放在循环外面。像这样

for (int i = 0; i<10; i++){
    namen.add(in.next());
    int aantalNamen = namen.size();
    System.out.println(namen);
    System.out.println(aantalNamen);
}
namen.remove(9);

答案 2 :(得分:0)

  

如何更改此代码才能使其正常工作?

要开始工作,您需要在i==9声明处比较if

  if(i == 9){
     namen.remove(9);
   }