java - 从 ArrayList 中检索随机对象

标签 java android arraylist

下面的方法是我用来填充数组的方法。不过,我希望从 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) {

        }
    });
}

最佳答案

使用 Random 从 0 到集合的 size-1 范围内获取随机整数。

从 Java 1.7 开始,推荐的 Random 实现是 ThreadLocalRandom。

private int randomInt(final int from, final int to) {
    return ThreadLocalRandom.current().nextInt(from, to);
}

关于java - 从 ArrayList 中检索随机对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42374374/

相关文章:

java - Primefaces 组件在纯 Html 文件中的使用

android - 在 Android Studio 中添加 Caldroid 库

java - 通过 tabView 显示不同的 xml

java - 无法调试,0x00007c37 处的致命信号 6 (SIGABRT)(代码=-6)

java - 如何根据两个参数对对象列表进行排序以在 Java 中进行比较?

javascript - 如何通过 Lodash 将对象数组转换为一个对象

java - dijkstra算法的绘图图

java - 删除 Activity 中的标题栏也会删除图像

java - Hazelcast 在运行时添加成员

java - 如何删除arraylist重复值