这是我的hashmap:
if (m1.get(image.getRGB(x, y)) == null) {
m1.put(image.getRGB(x, y), 1);
} else {
int newValue = Integer.valueOf(String.valueOf(m1.get(image.getRGB(x, y))));
newValue++;
m1.put(image.getRGB(x, y), newValue);
}
然后我这样打印出来:
for (Object key : m1.keySet()) {
Color temp = new Color((int) key);
int r = temp.getRed();
int g = temp.getGreen();
int b = temp.getBlue();
System.out.println("r: " + r + " G: " + g + " B: " + b+ "\t\tValue: " + m1.get(key));
}
如何选择我的hashmap中的第二个值(hashmap中的第二个最大值)将其值保存在另一个变量中?
答案 0 :(得分:-1)
您可以使用以下值创建列表:
List<Integer> valuesList = new ArrayList<Integer>(m1.values());
然后对其进行排序:
Collections.sort(valuesList, Collections.reverseOrder());
最后得到第二项:
int secondMax = valuesList.get(1);