1.如何查找数组中的数字出现的次数
例如:Integer[] nums=new Integer[]{10,5,6,9,8,7,4,5,4,210,2,5,8,9,6,3,7,4,9};中有哪些数字?各出现了几次?2.如何查找数组中的字符出现的次数
例如:Character[] nums=new Character[]{'0','a','a','a','*','&','0'};中有哪些字符?各出现了几次?3.如何查找数组中的字符串出现的次数
例如:String[] nums=new String[]{"abc","abc","abc","000","000","gaopan","gao","gao"};中有哪些字符串?各出现了几次?4.如果是对象呢?(选答)

解决方案 »

  1.   

    前面写过的一个import java.util.*;
    public class Test3
    {
        public static void main(String[] args)
        {
            int num = 1;
            HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
            Integer[] is = {1,2,1,3,2,1,3,2,3,4};
            Arrays.sort(is);
            for(int i = 0;i<is.length; i++){
                if(i !=(is.length-1)){
                    if(is[i]==is[i+1]){
                        num++;
                    }
                    if(is[i]!=is[i+1]){
                        map.put(is[i],num);
                        num = 1;
                    }
                }
                else{
                    if(is[i]==is[i-1]){
                        map.put(is[i],num);
                    }
                    else{
                        map.put(is[i],1);
                    }
                }
            }
            
            System.out.println(map.toString());
        }
    }
      

  2.   


    import java.util.*;
    class SearchArray 
    {
    public static <T> HashMap<T, Integer> search(T[] array)
    {
    int num = 1;
    HashMap<T, Integer> map = new HashMap<T, Integer>();
    Arrays.sort(array);
    for(int i = 0; i < array.length; i++){
    if(i != (array.length-1)){
    if(array[i].equals(array[i+1])){
    num++;
    }
    else{
    map.put(array[i],num);
    num = 1;
    }
    }
    else{
    if(array[i].equals(array[i-1])){
    map.put(array[i],num);
    }
    else{
    map.put(array[i],1);
    }
    }
    }
    return map;
    }
    }public class Test8
    {
    public static void main(String[] args){
    Integer[] nums1=new Integer[]{10,5,6,9,8,7,4,5,4,210,2,5,8,9,6,3,7,4,9};
    HashMap<Integer, Integer> map1  = SearchArray.<Integer>search(nums1);
    System.out.println(map1.toString());

    Character[] nums2=new Character[]{'0','a','a','a','*','&','0'};
    HashMap<Character, Integer> map2  = SearchArray.<Character>search(nums2);
    System.out.println(map2.toString());

    String[] nums3=new String[]{"abc","abc","abc","000","000","gaopan","gao","gao"};
    HashMap<String, Integer> map3  = SearchArray.<String>search(nums3);
    System.out.println(map3.toString());
    }
    }