在arraylist中随机索引添加值

时间:2012-04-09 14:38:17

标签: android arraylist

我想在arraylist中添加一些值,但是随机索引。这可能吗?

2 个答案:

答案 0 :(得分:2)

您可以使用范围Math.Random来执行此操作。我怀疑你想在任何索引中添加它,因为ArrayList是dynamically expanding array,这意味着如果你使用超过一定大小的索引,它将不得不调整大小。这将使您的插入物比它们需要的更昂贵,并且它还将占用比所需更多的存储器。如果你知道你只会说... 100项,那么只需选择1到100之间的随机值。

编辑:如果您执行以下操作,则Random不会生成小数值..您说您希望范围介于1-4之间,而下列应该为您提供所需的...

public int Rand(){
    return ((int)(1+(Math.random()*4)));
}

答案 1 :(得分:0)

是的,Math.random()可以与add()的重载ArrayList方法一起使用。
例如:

arrayList.add(getRandomIndex(arrayList.size()),object);

getRandomIndex()方法可以是:

public int getRandomIndex(int size){
    return ((int)Math.random()*size)
}