String Code ,Name,Amount;
Code =this.comboBox1.getSelectedValue();
Name =this.comboBox1.getSelectedValue1();
Amount=this.textField01.getValue(); String[][] data =new String[][]{
{Code,Name,Amount}
};
怎么实现我的三个变量值改变时,我的数组里面的值不是改变~而是增加??
比如说:
当code=1 Name=2 Amount=3 这组值添加进data
当code=2 name=2 Amount=2 这组值添加进data
这时候data里面要实现的是有两组值{1,2,3}{2,2,2}
而不是将{1.2.3}的值改变为{2.2.2}
谢谢给个例子

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【hahaha1983】截止到2008-07-22 16:04:40的历史汇总数据(不包括此帖):
    发帖的总数量:9                        发帖的总分数:120                      每贴平均分数:13                       
    回帖的总数量:5                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:9                        结贴的总分数:120                      
    无满意结贴数:3                        无满意结贴分:60                       
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:33.33 %               无满意结分率:50.00 %                  
    敬礼!
      

  2.   

    你要增加就只有重新创建一个数组了,不过有一个变通的方法。List list=new ArrayList();String[] d=new String[]{Code,Name,Amount} ;//每次来了都创建一个新的一维数组list.add(d);
    list.toArray();//等你需要二位数组时再转换成二维的数组。
      

  3.   

    声明数组时候,改成如下 
    String[][] data =new String[2][]{ 
    {Code,Name,Amount} 
    }; 
      

  4.   

    Vector stringGroup = new Vector();String[] d = {Code,Name,Amount};stringGroup.add(d);
      

  5.   

    LZ就只声明了长度为1的数组啊....数组是不能变长的..建议用ArrayList来add
      

  6.   

    String[][] data =new String[][]{ 
    ...
    }因为你每次都在NEW, 当然会出现你的那种情况啦
      

  7.   

    以下是我刚写的一个例子,看看和你的意思一样不
    public class ArrayDemo {
    public static void main(String[] args) {
    String[][] data =new String[3][1000];//先固定一个足够大的数组来存放
    String[] jishu=new String[3];
    jishu=arr("aa");
    int i=0;
    for(int j=0;j<100;j++)
    {
    if(j%2==0)
    {
    jishu=arr("aa"+j);
    data[0][i]=jishu[0];
    data[1][i]=jishu[1];
    data[2][i]=jishu[2];
    i++;
    }
    }
    for(int m=0;m<i;m++)
    {
    for(int k=0;k<3;k++){
    System.out.println(data[k][m]);
    }
    }

    }
    public static String[] arr(String str)
    {
    String[] aa=new String[3];
    for(int i=0;i<3;i++)
    {
    aa[i]=str+i;
    }
    return aa;
    }
    }
      

  8.   

    ArrayList tableData = new ArrayList();
    ArrayList list = new ArrayList();
    String[] bb = null;String Code, Name, Amount;
    Code = this.l4comboBox1.getSelectedValue();
    Name = this.l4comboBox1.getSelectedValue1();
    Amount = this.l4textField7.getValue();String[] d=new String[]{Code,Name,Amount} ;
    list.add(d); 
    bb = (String[]) list.toArray(new String[0]);
    tableData.add(bb);
    String[][] dataSet = (String[][]) tableData.toArray(new String[0][0]);
    l4table1.setData(dataSet);貌似不行?
      

  9.   

    lovingprince 
    在帮看看撒
      

  10.   

    对象数组是不能自增长的你如果要达到增长的效果就产生一个新的二维数组  再System.arraycopy吧
      

  11.   

    我晕 你们对ArrayList了解吗,他就是个数组,只是个动态数组,你不知道数据有多少,你就用 ArrayList不就得了,要是性能问题那就用数组,但是用数组不太好,因为根本就不知道你的数组有多大,每次重新创建耗费内存空间,你是在用空间换时间有必要吗。直接创建对象装数据,用ArrayList保存数据不就可以了。