在不确定集合长度的情况下,遍历得到想要的数
在实时获取数据时,通讯不稳定的情况下,存在数据长度达不到自己想要的情况。
所以另外设置一个定时器,进行数据长度的确认,再遍历得到想要的数。
ps:两个集合,一个是存随机数,一个是存遍历结束得到的结果。
下面的例子:
```private ArrayList list =new ArrayList();
private ArrayList list1 =new ArrayList();
CountDownTimer countDownTimer;
double q1;
//这里产生随机数
Random random = new Random();
int sa =random.nextInt(5000);
System.out.println("随机数"+sa);
list.add(sa);
int wq =1;
if (list.size()<2){
countDownTimer.start();
System.out.println("这里我启动了"+wq+"次");
}
wq++;
//这里是单独的计时
countDownTimer = new CountDownTimer(5500,1000) {
@Override
public void onTick(long millisUntilFinished) {
if (millisUntilFinished/1000==1){
q1 = (int) Collections.max(list)*0.9;
System.out.println("90%的数"+q1);
b1.setEnabled(false);
}
}
@Override
public void onFinish() {
for (int i=0;i<list.size();i++){
int q2 = (int) list.get(i);
if (q2>q1){
System.out.println("大于的数"+q2);
list1.add(q2);
System.out.println("在集合里面是第几位"+list.indexOf(list1.get(0)));
}
}
System.out.println("集合里的数"+list.toString());
System.out.println("集合里长度"+list.size());
}
};