private Map sortMapByValueLong(Map oriMap, final boolean isAsc) {
Map sortedMap = new LinkedHashMap();
if (oriMap != null && !oriMap.isEmpty()) {
List> entryList = new ArrayList>(oriMap.entrySet());
Collections.sort(entryList,
new Comparator>() {
public int compare(Entry entry1,
Entry entry2) {
long value1 = 0, value2 = 0;
try {
value1 = entry1.getValue();
value2 = entry2.getValue();
} catch (NumberFormatException e) {
value1 = 0;
value2 = 0;
}
// 判定
long rst = 0;
if (isAsc) {
rst = value1 - value2;
} else {
rst = value2 - value1;
}
return (int)rst;
}
});
Iterator> iter = entryList.iterator();
Map.Entry tmpEntry = null;
while (iter.hasNext()) {
tmpEntry = iter.next();
sortedMap.put(tmpEntry.getKey(), tmpEntry.getValue());
}
}
return sortedMap;
}