Android ArrayList删除只是普通不起作用

时间:2019-06-09 23:39:44

标签: java android arraylist

我正在尝试从ArrayList中删除元素,但什么也没发生。

这是针对Android开发课程的-必须通过索引从ArrayList中删除一个元素。我在删除前后都放了日志,什么也没发生。


    // at the top of MainActivity.java

    ArrayList<String> notes;
    Integer bigPos;

    // in a dialog box positive button onClick method
    notes.remove(new Integer(bigPos)); // just to force it to execute the integer method
    // bigPos is set to pos in the long click listener before the alert.show is executed. I know from logs that the bigPos and notes are in scope. the code RUNS it just doesn't DO anything... notes is the same after the removal.

我希望输出是带有元素#bigPos的注释ArrayList。没有变化。

1 个答案:

答案 0 :(得分:2)

步骤1:为int使用Integer而不是bigPos

第2步:从您的new Integer()通话中删除remove()

就目前而言,我认为您正在尝试删除一个值为String的字符串表示形式的bigPosremove()有两个变体:

  • remove(int)按索引删除
  • remove(Object)按值删除

如果出于某种原因您确实真的想将Integer用于bigPos,则将remove(new Integer(bigPos))替换为remove(bigPos.intValue())