这段代码给出了我的结果" 0":
Map<Integer, Long> bwvm=BwProvisionerSimple.getBwConsumed();
Map<Integer, Long> map = new HashMap<Integer, Long>();
long sum = 0;
for (Long val : map.values()){
sum += val;
}
long bwhost=BwProvisioner.getBw();
Log.print("getBw"+bwhost+"\n");
if (sum > bwhost){
bwhost=sum;
}
Log.printLine("\n new Bw host="+bwhost);
答案 0 :(得分:0)
问题在于您的地图:您只是初始化它们而不是插入值。
Map<Integer, Long> bwvm=BwProvisionerSimple.getBwConsumed();
Map<Integer, Long> map = new HashMap<Integer, Long>();
答案 1 :(得分:0)
与其他人指出的一样,你的地图是空的。但是,当你了解它时,你可以查看java 8减少。它已经有一个内置的sum()方法
https://docs.oracle.com/javase/tutorial/collections/streams/reduction.html