我现有一个数组
如[1,2,3,1,3,3,3,4,5,2,4,5,6,7]
里面的元素是不固定的
我如何统计出每个不同元素并计算出现的次数求源代码

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【huoyutu】截止到2008-07-22 20:34:55的历史汇总数据(不包括此帖):
    发帖的总数量:7                        发帖的总分数:190                      每贴平均分数:27                       
    回帖的总数量:34                       得分贴总数量:8                        回帖的得分率:23%                      
    结贴的总数量:7                        结贴的总分数:190                      
    无满意结贴数:1                        无满意结贴分:50                       
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:14.29 %               无满意结分率:26.32 %                  
    敬礼!
      

  2.   

    int array_1={3,1,6,5,4,9,8,7,9,8,3,6,1,6,5,4,6,8};
    Hashtable hashtabel=new Hashtable();
    for(int i=0;i<=array_1.length;i++)
    {
       if(hastalbe.containsKey(array_1[i]))  hashtable.get(array_1[i])++;
       else hashtable.put(array_1[i],1);
    }
    这样 hashtable的key就是 值 value就是出现的次数
      

  3.   

    能不能用List集合做
    你这个例子有问题hashtable.get(array_1[i])++; 我看不懂这一句,操作符不能这样用吧
      

  4.   

    (Integer)(hashtable.get(array_1[i]))++
      

  5.   

    int array_1={3,1,6,5,4,9,8,7,9,8,3,6,1,6,5,4,6,8}; 这个是java的写法吗? 首次看到.
      

  6.   

    搞定了
    我把代码贴出来
    public class TestDemo {
    public static void main(String [] args){
    int[] array_1={3,1,6,5,4,9,8,7,9,8,3,6,1,6,5,4,6,8}; 
    Map set=new  HashMap();
    for(int i=0;i<array_1.length;i++){
    if(set.containsKey(array_1[i])){
    int j=Integer.parseInt(set.get(array_1[i]).toString());
    j=j+1;
    set.put(array_1[i], j);
    }else{
    set.put(array_1[i], 1);
    }
    }
    Iterator it = set.keySet().iterator();
       while (it.hasNext()){
        String key;
        key=it.next().toString();
        System.out.println(key + ":" + set.get(Integer.parseInt(key)));
       } }
    }
    如果换成自定义对象也应该能实现上面的功能吧