读书人

list中怎么判断相同值的个数

发布时间: 2012-01-18 00:23:26 作者: rapoo

list中如何判断相同值的个数?
比如说一个list,里面是1,1,2,2,3,3,3,4,4
如何得到1有2个,2有2个,3有3个,4有2个?

[解决办法]

Java code
package com.java.others;import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.Scanner;/** * 计算字符串的字符出现的次数 * @author lichaoever * */public class getCount {    List<String> list = new ArrayList<String>();    Scanner s = new Scanner(System.in);    public getCount() {        System.out.println("请输入字符:");        this.count(s.nextLine());    }    private void count(String str)    {        char[] c = str.toCharArray();        for(char s : c)        {            list.add(String.valueOf(s));        }        Collections.sort(list);                for(String s : list)        {            int begin = list.indexOf(s);            int end = list.lastIndexOf(s);                        System.out.println("字母'"+ s + "'有:"+(end - begin + 1)+"个");        }    }    public static void main(String[] args) {        new getCount();    }}
[解决办法]
Java code
   import java.util.ArrayList;import java.util.List;public class B {    public static void main(String[] args) {        List<Integer> list = initData();        int x = list.size();        while(list.size()!=0){            List<Integer> arr =  list;            Integer obj = list.get(0);            List<Integer> l1 = new ArrayList<Integer>();            l1.add(obj);            arr.removeAll(l1);                        System.out.println(obj+"出现"+(x-arr.size())+"次");            x = arr.size();        }    }        public static List<Integer> initData(){        List<Integer> list = new ArrayList<Integer>();        list.add(1);        list.add(1);        list.add(2);        list.add(2);        list.add(3);        list.add(3);        list.add(3);        list.add(4);        list.add(4);        return list;    }} 

读书人网 >J2SE开发

热点推荐