- meira
-
public static void main(String[] args) {
int array[]={5, 10, 10, 5, 2, 5, 3, 5, 10, 5, 2, 5, 5, 10, 1, 5, 1};
Arrays.sort(array);// 给数组排序
int count=0;
int tmp=array[0];
Map map=new HashMap();
for(int i=0; i < array.length; i++) {
if(tmp != array[i]) {
tmp=array[i];
count=1;
} else {
count++;
}
map.put(array[i], count);
}
map=sortByValue(map);
Set<Integer> key = map.keySet();
for (Iterator it = key.iterator(); it.hasNext();) {
Integer s = (Integer) it.next();
System.out.println(s+"出现了"+map.get(s));
}
}
public static Map sortByValue(Map map) {
List list=new LinkedList(map.entrySet());
Collections.sort(list, new Comparator() {
// 将链表按照值得从小到大进行排序
public int compare(Object o1, Object o2) {
return ((Comparable)((Map.Entry)(o2)).getValue()).compareTo(((Map.Entry)(o1)).getValue());
}
});
Map result=new LinkedHashMap();
for(Iterator it=list.iterator(); it.hasNext();) {
Map.Entry entry=(Map.Entry)it.next();
result.put(entry.getKey(), entry.getValue());
}
return result;
}
- 西柚不是西游
-
/***求出一个数组中出现次数最多的数,如果有多个数出现次数相同,一同列出 */import java.util.TreeMap;import java.util.Iterator;import java.util.Map;import java.util.Set;import java.util.Arrays;class ArrayLookup{public void getMaxCount(int[] iArr){int i = 0; //临时变量 int j = 0; //临时变量int count = 1; //记录相同数字出现次数int temp = 0; //记录数组中相同元素的值int max = 0; //记录出现次数最多的数 //数组排序Arrays.sort(iArr);TreeMap<Integer,Integer> tm = new TreeMap<Integer,Integer>();//将数字与其出现次数存入Map集合while(i<iArr.length){for(j= i+1; j<iArr.length && iArr[i]==iArr[j]; j++)count++;tm.put(iArr[i],count); count = 1;i = j;}Set<Map.Entry<Integer,Integer>> set = tm.entrySet();Iterator<Map.Entry<Integer,Integer>> it = set.iterator();while(it.hasNext()){Map.Entry<Integer,Integer> me = it.next();System.out.println(me.getKey() + "出现 " + me.getValue() + " 次");}}}public class ArrayLookupMain {private int count;public static void main(String[] args){ int[] intArray = {2,3,4,2,3,4};//,2,2,2,2,5,2,12,6,8,4,3,7,7,5,3,2,5,8,9,8,8,4,5,4,6,8,9,0,5,3,3,2,4,4,7,8,5,34,5,6,5,3,34,6,7,8,9,0};ArrayLookup arr = new ArrayLookup();arr.getMaxCount(intArray); } }
- 小教板
-
for(i=0;i<i.length;i++){
system.out.println("");
}
- 可乐
-
用增强FOR循环