我把从数据库搜索出来的结果(是一个对象)放在一个Arraylise里面,包含了2个字段一个类型是String 一个是int;比如[aaa, 8]
现在我要在给这个搜索出来的结果在增加一个类型是int的字段,构造成这样的效果:[1,aaa, 8]
要怎么处理呢?

解决方案 »

  1.   

    用int i;
    每次Arraylise调用add以后,将i++
      

  2.   

    List temp = new ArrayList();//这个是存放搜索出来的结果;[aaa, 8];[bbb, 9]等     int n=temp.size();
         int id=1; for (int i=0;i<n;i++)  {
          ArrayList temp1= (ArrayList)temp.get(i);
          temp1.add(0, id);//这样是不是能将[aaa, 8]构造成[1,aaa, 8]           
         }最终我搜索出来的结果变成这个效果:;[1,aaa, 8];[1,bbb, 9]等
      

  3.   

    从数据库里检索出来的对象是放在一个bean里吗。如果是,就在bean里再加一个int 属性
      

  4.   

    因为搜索出来之后的处理方式已经做好了
    现在这个搜索出来的结果和之后的处理方法有差距
    为了不更改之后的工作
    所以就想把这个[aaa, 8]构造成[1,aaa, 8]
      

  5.   

    class Obj1
    {
          String str;
          int num1;
    }class Obj2 extends Obj1
    {
          int num2;
    }
    为什么不用这种形式?或者再加个接口
      

  6.   

    情况是这样的
     
    List temp = new ArrayList();//这个是存放搜索出来的结果;[aaa, 8];[bbb, 9]等     int n=temp.size();
         int id=1;//这个id是另外一个表的主键, for (int i=0;i<n;i++)  {
          ArrayList temp1= (ArrayList)temp.get(i);
          temp1.add(0, id);//这样是不是能将[aaa, 8]构造成[1,aaa, 8]           
         }
    为什么要构造成[1,aaa, 8]这样的格式呢?
    因为我在后面做了一个通用的 ReportInfoTable(id,String,int)方法,这个方法直接调用了这个这个结果,需要三个参数;
    所以我想在这里直接构造出这样的结果,这样就不用修改下面的方法了
      

  7.   

    我现在上面的代码不知道能不能实现
    我在执行ArrayList temp1= (ArrayList)temp.get(i);这句话的时候报错:java.lang.ClassCastException: [Ljava.lang.Object
      

  8.   

    上面有个说了给一个继承类,差不多就是这样,用你自己的对象替换原来的。
    因为你list里面放的是自己的对象,没什么办法给他加一个属性,如果你要清晰的表达这个变化
    就把他包装一下了,什么都不想动就在属性值上做手脚,不过这样很不好