计算数组中相同元素的个数,以及数组总的元素数(重复元素算一个)

来源:互联网 发布:深邃的眼睛 知乎 编辑:程序博客网 时间:2024/05/17 21:51
一个数组,其中包含重复的元素,计算出重复元素的个数,以及所有元素的个数,重复的元素算一个

数组需要排序
ArrayList<String> list = new ArrayList<String>();
        list.add("0");
        list.add("0");
        list.add("1");
        list.add("1");
        list.add("1");
        list.add("2");
       
        int flag = 0;
        String record;
        int count = 0;
        record = list.get(0).toString();// 将第0个元素先放入record中
        List<String> num = new ArrayList<String>();
        int size = list.size();
        for (int i = 0; i < size; i++)
        {
            if (!list.get(i).equals(record))
            {
                num.add(record + "相同的个数是:" + count);
                // 将新出现的不同元素赋给record
                record = list.get(i);
                // count重置为1,开始重新计数
                count = 1;
                flag++;
            }
            //记录相同数的数量
            else
            {
                count++;
            }
           
            // 记录最后一个
            if (i == size - 1)
            {
                num.add(record + "相同的个数是:" + count);
                flag++;
            }
        }
       
       
        System.out.println("元素个数:" + flag + "");
       
        for (int j = 0; j < num.size(); j++)
        {
            System.out.println(num.get(j));
        }