如果想要Hashtable中值value进行选择排序如何进行
时间: 2023-05-11 12:06:19 浏览: 58
可以先将Hashtable中的所有value存储到一个数组中,然后对这个数组进行选择排序,再将排序后的结果更新回Hashtable中对应的value即可。以下是示例代码:
Hashtable hashtable = new Hashtable();
// 假设Hashtable中已经存储了一些键值对
// ...
// 将Hashtable中的所有value存储到数组中
Object[] values = hashtable.values().toArray();
// 对数组进行选择排序
for (int i = 0; i < values.length - 1; i++) {
int minIndex = i;
for (int j = i + 1; j < values.length; j++) {
if (((Comparable) values[j]).compareTo(values[minIndex]) < 0) {
minIndex = j;
}
}
if (minIndex != i) {
Object temp = values[i];
values[i] = values[minIndex];
values[minIndex] = temp;
}
}
// 将排序后的结果更新回Hashtable中对应的value
Enumeration keys = hashtable.keys();
int i = 0;
while (keys.hasMoreElements()) {
Object key = keys.nextElement();
hashtable.put(key, values[i++]);
}