我现在有一批数据。格式如下:
String[] a={
1996 21 1,
1996 21 2,
1996 21 3,
1996 22 1,
1996 22 2,
2000 21 2,
2000 23 2}
我想显示出来的格式是:
1996  V21  NO.1  2  3 
      V22  No.1  2
2000  V21  No.2
      V23  No.2

解决方案 »

  1.   

    try Hashtable<String, Hashtable<String, Integer>>
      

  2.   

    很好笑吗?
    ====================public class Test{     public static void main(String args[]){ 
            String[] a={"1996 21 1",
                        "1996 21 2",
                        "1996 21 3",
                        "1996 22 1",
                        "1996 22 2",
                        "2000 21 2",
                        "2000 21 3",
                        "2000 21 4",
                        "2000 23 3",
                        "2000 23 2"};
            String ss,sv;
            int i=0;
            ss=a[0].substring(0,4);
            sv=a[0].substring(5,7);
            System.out.print(ss+"  V"+sv+"  NO."+a[0].substring(8,9));
            i=1;        
            do{
                while(i<a.length&&ss.equals(a[i].substring(0,4)))
                {
                    while(i<a.length&&sv.equals(a[i].substring(5,7)))
                    {
                        System.out.print("  "+a[i].substring(8,9));
                        i++;
                    }
                    System.out.println();
                    if(i<a.length) {
                        sv=a[i].substring(5,7);
                        if(ss.equals(a[i].substring(0,4)))
                            System.out.print("      V"+sv+"  NO."+a[i].substring(8,9));
                        else {
                            ss=a[i].substring(0,4);
                            System.out.print(ss+"  V"+sv+"  NO."+a[i].substring(8,9));                      
                        }
                    }
                    i++;
                };
            }while(i<a.length);    } 
        

    =============
    测试可能不完全,这个应该可以符合要求吧另:这里假定串中的位数、位置是固定的,如果不是,就要用string.split("\s+")取得各段字符了;判断还是一样的
      

  3.   

    同意sxnucseven的说法,使用Map->Map->ArrayList的结构,或者自己写一个结构来做
    要通过设计数据结构来简化程序逻辑
      

  4.   

    把每一条数据分割成三段,分别保存到临时表的三个字段,然后通过数据库的group by来做
    这样效率很高