题目描述:给定一个List<Double>nums,使用两个线程同时计算平均数和中位数,最终返回平均数和中位数较大者,不能是顺序执行
解决:使用Runnable接口解决
求平均数的Runnable实现类
class RunnableAver implements Runnable {
private List<Double> num;
private double aver = 0.0d;
@Override
public void run() {
//模拟耗时操作,可删除
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
//空集合判断
if(num.size() <=0){
return;
}
for (int i = 0; i < num.size(); i++) {
aver += num.get(i);
}
aver = aver / num.size();
}
public Double getAver() {
return aver;
}
}
求中位数的Runnable实现类
class RunnableMid impleme