mStrArray[0] = mResultSet.getString(1);
mStrArray[1] = mResultSet.getString(2);
你取的东西都是一样的,当然都是一个了

解决方案 »

  1.   

    你没有从新申请变量,始终在操作同一个变量所以,只能得到一个直。
    在while中先new一下
    mStrArray = new String[2];然后再使用就行了,注意是在循环中进行new操作。
      

  2.   

    ...........String[] tmp = new String[2];
    for(Iterator i=mArrayList.iterator();i.hasNext();){
        tmp=(String[])i.next();     
        System.out.println(tmp[0]+ "---" + tmp[0]);
        System.out.println(tmp[1]+ "---" + tmp[1]);
    }
      

  3.   

    我是否应该如此理解:
    ArrayList其实是放了一些地址,如果没有New的话ArrayList所指向的地址都是一个.
    不知道我理解得是否正确?另有加分!!!谢谢!!!
      

  4.   

    mStrArray你从头到尾加进去的都是这个实力,而这个实例只有两个值。
    你在怎么ADD,mStrArray都是同一个地址里的值。所以会有你现在的问题。
    解决方法是在你的while里每次都创建一个新的ArrayList
      

  5.   

    我是否应该如此理解:
    ArrayList其实是放了一些地址,如果没有New的话ArrayList所指向的地址都是一个.
    不知道我理解得是否正确?另有加分!!!谢谢!!!
    你理解的不对。
    其实他们没有指向任何东西的。除非你new一个。