美文网首页
三个对象随机选两个

三个对象随机选两个

作者: 皓皓amous | 来源:发表于2023-07-18 16:50 被阅读0次

public class RandomActivity extends AppCompatActivity {

private String TAG = "ream";
private static final int SHAKEHEAD = 1;
private static final int NODHEAD = 2;
private static final int BLINK = 3;
private Random random;
private List<Integer> status = new ArrayList<>();
private Button bbtn;
private Button b;
private int count;


@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.testrand);
    status.add(1);
    status.add(2);
    status.add(3);

    random = new Random();
    List<Integer> newDataList = new ArrayList<>();
    List<Integer> indexList = new ArrayList<>();

    Button btn = findViewById(R.id.a);
    b = findViewById(R.id.brodomtn);
    b.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if (count < 2) {
                Integer integer = newDataList.get(count);
                count++;
            } else {
                count = 0;
                Toast.makeText(RandomActivity.this, "已经用完了", Toast.LENGTH_SHORT).show();
            }
        }
    });

    btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            newDataList.clear();
            indexList.clear();
            extracted(newDataList, indexList);
        }
    });

}

private void extracted(List<Integer> newDataList, List<Integer> indexList) {
    if (status != null && status.size() > 0) {
        for (int i = 0; i < 2; i++) {
            int randomIndex = random.nextInt(status.size()); // 0,1,2
            Log.d(TAG, "Testsq" + "  randomIndex: " + randomIndex);
            Log.d(TAG, "Testsq" + "  i: " + i);
            if (!indexList.contains(randomIndex)) {
                newDataList.add(status.get(randomIndex));
                indexList.add(randomIndex);
                Log.d(TAG, "Testsq" + "  indexList: " + indexList.toString());
                Log.d(TAG, "Testsq" + "  newDataList: " + newDataList.toString());
                Log.d(TAG, "Testsq" + "  ..................................");
            } else {
                i--;
                Log.d(TAG, "Testsq" + "  i--: " + i);
                Log.d(TAG, "Testsq" + "  indexList: " + indexList.toString());
                Log.d(TAG, "Testsq" + "  newDataList: " + newDataList.toString());
            }
        }
    }
}

}

相关文章

  • 五百万和对象你选什么?

    有个街头调查是随机找在街头的情侣问他们五百万和对象之间选谁,几乎所有女的都选了五百万,而且是当着对象的面,而男的,...

  • 2019-05-23Vue基础

    Vue主要包含两个部分:Vue对象和指令 1.Vue对象 var 对象名 = new Vue({el:关键对象的选...

  • [智力题]选红球

    你有两个罐子,50个红色弹球,50个蓝色弹球,随机选出一个罐子,随机选取出一个弹球放入罐子,怎么给红色弹球最大的选...

  • 器-说明:ruby中的一些小知识点

    一、range对象 range对象有两个点和三个点的区间的区别: 1.两个点的range对象 在range对象中使...

  • 如何选书

    选书很重要,PK读多少书不重要,重要的是读的书能解决自己的问题。选书和找对象一样难。 选书从三个方面选书。 第一从...

  • 编程模拟自然系统,程序2:mover

    这个例子里,描述了一个一直向前的对象。 每一次,对象会随机选一个出生位置和一个方向,然后一直运动下去。如果碰到边缘...

  • 真苦阴针技法试验成功

    一天狙击两个涨停 2/3 共三个选股

  • python中random模块提供的各种随机函数

    python中导入random模块后, 通过random静态对象调用各种方法,实现随机序列生成或者随机数,随机字符...

  • 第四次实践性作业

    1、用Python或Sage实现RSA算法的加密、解密、签名/验证签名 基本思路:1.随机选两个大素数p和q,构造...

  • 随机森林

    1、让两个以及两个以上组合树变成一颗树:combine() ...:每个随机森林对象 2、从森林中提取一颗树:ge...

网友评论

      本文标题:三个对象随机选两个

      本文链接:https://www.haomeiwen.com/subject/fvgnudtx.html