从ArrayList中删除随机项

时间:2015-11-24 06:00:07

标签: java android android-intent arraylist

我是android新手。我有一个字符串ArrayList,ArrayList包含随机选择并在TextView中设置的问题。当用户单击下一步时,应转到下一个活动,查找同样从ArrayList中选择的另一个问题。我想从Arraylist中删除第一个问题,以防止第二个活动中的重复。我怎样才能做到这一点?

这是我的表现:

int rando = (int)((Math.random()*10));

textView.setText(myArrayList.get(rando));

我使用Intent将myArrayList传递给第二个活动。

但我无法弄清楚如何在进行下一个活动之前删除textView中的项目。我使用了myArrayList.remove(textView.getText());但没有工作。

3 个答案:

答案 0 :(得分:4)

首先,保持rando值。然后在你开始下一个活动时使用它:

myArrayList.remove(rando);

答案 1 :(得分:2)

尝试使用myList.remove(rando);,其中rando是索引

public static void main(String[] args) {
        List<String> myList = new ArrayList<String>();
        myList.add("abc1");
        myList.add("abc2");
        myList.add("abc3");
        myList.add("abc4");

        int rando = (int) ((Math.random() * myList.size()));
        System.out.println(rando);
        String text = myList.get(rando);
        System.out.println(text);
        System.out.println(myList);

        myList.remove(rando);
        System.out.println(myList);

    }

<强>输出

2
abc3
[abc1, abc2, abc3, abc4]
[abc1, abc2, abc4]

答案 2 :(得分:0)

您可以尝试删除项目的位置。

而不是这个,

myArrayList.remove(textView.getText());

你必须使用以下代码

myArrayList.remove(rando);