我正在做 cloudsim 项目。所以我写了下面的代码,这段代码首先计算平均值,然后按升序排列 ArrayList 的值。所以我想通过引用 vmList 在 Vm 类型中返回此代码。谁能帮我 ?我该怎么办?或者这段代码有什么问题?
public static <T extends Vm> ArrayList<Double> sortByFFDMean(List<T> vmList) {
double size = 0;
double sum = 0;
ArrayList<Double> vmSize = new ArrayList<Double>();
ArrayList<Double> vms = new ArrayList<Double>();
for(Vm v: vmList)
{
double cpu = v.getTotalUtilizationOfCpuMips(CloudSim.clock());
double ram = v.getTotalUtilizationOfRam(CloudSim.clock());
double bw = v.getTotalUtilizationOfBW(CloudSim.clock());
size = (cpu + ram + bw / 3);
vmSize.add(size);
sum += size;
}
double mean = sum/vmList.size();
for(int i=0; i<vmSize.size(); i++)
{
if(vmSize.get(i) > mean)
{
vms.add(vmSize.get(i));
}
else
{
vms.add(vmSize.get(i));
}
}
Collections.sort(vms, Collections.reverseOrder());
return vms;
}