cho*_*hop 4 java hashtable max
嗨,我有以下对象:
Hashtable<Object, Double>
Run Code Online (Sandbox Code Playgroud)
我想找到表中最大Double值的键.最简单的方法吗?
谢谢
没有内置函数可以获得最大值,Hashtable您必须遍历所有键并手动确定最大值.
Object maxKey=null;
Double maxValue = Double.MIN_VALUE;
for(Map.Entry<Object,Double> entry : table.entrySet()) {
if(entry.getValue() > maxValue) {
maxValue = entry.getValue();
maxKey = entry.getKey();
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:查找最多值的1个以上的键
ArrayList<Object> maxKeys= new ArrayList<Object>();
Double maxValue = Double.MIN_VALUE;
for(Map.Entry<Object,Double> entry : table.entrySet()) {
if(entry.getValue() > maxValue) {
maxKeys.clear(); /* New max remove all current keys */
maxKeys.add(entry.getKey());
maxValue = entry.getValue();
}
else if(entry.getValue() == maxValue)
{
maxKeys.add(entry.getKey());
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11660 次 |
| 最近记录: |