本帖最后由 java2000_net 于 2008-08-05 11:19:07 编辑

解决方案 »

  1.   

    个人觉得用hashmap好一些
    hashmap中好像有containt方法直接判断是否有重复的
      

  2.   

    select count(*) from tbl_name group by name,size,type 
      

  3.   

    用map吧。。
    如果要三者完全相同,
    把name+type+size作为字符串做map的key,然后后面作为个数,就行了。
    遍历,判断。
      

  4.   

    不清楚你的意思
    比如[code=BatchFile]
    1    aaa    small  100 
    2    bbb    big    200 
    3    bbb    big    200
    4    aaa    small  100 
    5    bbb    big    200 
    6    bbb    big    200
    [/code]你想要得到的结果是多少呢?
      

  5.   

    恩,一句话就出去count了。。
      

  6.   

    完全一样的话存不到hashmap中去吧.不就无从判断了.
      

  7.   


    结果:
    aaa    small  100  --->2
    bbb    big    200  --->4不用数据库,不用sql.麻烦大家给个详细java代码,多谢了
      

  8.   

    可以用HashMap,先创建一个Map对象,然后得到三个值name  type  size  ,后可以调用如下的方法,来进行统计 private void countNTS(Map<String, Integer> map, String name, String type, String size) {
      String str = name + "\t" + type + "\t" + size;
      if (map.containsKey(str)){
        Integer aInt = map.get(str) + 1;
    map.put(str, aInt);
      } else {
        map.put(str, 1);
      }
    }
      

  9.   

    写个DataBean, 成员变量包括: ID, name, type ,size主程序中,用ArrayList<DataBean>读入数据,
    遍历这个ArrayList,遇到相同计数加一并删除.
      

  10.   

    package Test;import java.util.HashMap;
    import java.util.Map;class Data{
    private String no;
    private String name;
    private String type;
    private String size;

    public Data(String no,String name,String type,String size){
    this.name = name;
    this.no = no;
    this.type = type;
    this.size = size;
    }
    public Data(){

    }
    public String getString(){
    StringBuffer str = new StringBuffer();
    str.append(this.name).append("    ").append(this.type).append("    ").append(this.size).append("  ");
    String s = new String(str);
    return s;
    }
    }public class Test {
    public static void main(String[] args) {
    Data d[] = new Data[7];
    d[0] = new Data("1","aaa","smalll","100");
    d[1] = new Data("2","bbb","big","200");
    d[2] = new Data("3","bbb","big","200");
    d[3] = new Data("4","aaa","smalll","100");
    d[4] = new Data("5","bbb","big","200");
    d[5] = new Data("6","bbb","big","200");
    d[6] = new Data("7","bbb","big","200");
    Map<String, Integer> dd = new HashMap<String, Integer>();
    for(int i = 0;i<d.length;i++){
    if(dd.containsKey(d[i].getString())){
    dd.put(d[i].getString(), dd.get(d[i].getString())+1);
    }
    else{
    dd.put(d[i].getString(), 1);
    }
    }
    System.out.println(dd);
    }

    }