下面的方法是我用来填充数组的方法。但是我想从类型为deals_information
的ArrayList中返回一个随机Deals_Information
对象,但我不太确定如何。
public void populateArray() {
databaseReference.child("FruitDeals").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Iterable<DataSnapshot> children = dataSnapshot.getChildren();
final ArrayList<Deals_Information> myArray = new ArrayList<>();
for (DataSnapshot child : children) {
Deals_Information deals_information = child.getValue(Deals_Information.class);
myArray.add(deals_information);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
答案 0 :(得分:1)
使用Random从0的范围和集合的size-1中获取随机int。
从Java 1.7开始,推荐的Random实现是ThreadLocalRandom。
private int randomInt(final int from, final int to) {
return ThreadLocalRandom.current().nextInt(from, to);
}
答案 1 :(得分:0)
因为ArrayLists具有get()
函数,所以执行此操作的方法是首先使用math.random()
函数生成随机数,然后使用ArrayList的get()
函数在该随机生成的索引处调用该对象。