java for循环问题,int我返回零但循环运行良好

时间:2019-05-20 17:26:12

标签: java user-interface for-loop jtable

我有一个使用DefaultTableModel的JTable,我在数组中得到了结果,但是在执行for循环之后,int i将始终输出零值。循环工作正常。

This is the result

Ramalan forecast = model.ramalan(12);
DefaultTableModel tb = new DefaultTableModel();
String header[] = new String[] { "No", "tgl", "harga", "Batas Atas", "Batas Bawah" };
tb.setColumnIdentifiers(header);
Vector<Object> rml = new Vector<>();
for(int i=0; i<forecast.estimasiPoin().ukuran(); i++){
    rml.add(i);
    rml.add("");
    rml.add(aturDesim.format(forecast.estimasiPoin().pada(i)));
    rml.add(aturDesim.format(forecast.intervalPrediksiAtas().pada(i)));
    rml.add(aturDesim.format(forecast.intervalPrediksiAtas().pada(i)));
     tb.addRow(rml);
}
tableRamal.setModel(tb);

这是打印值的方式:

for(int i=0; i<12; i++){
    rml.add(i);
    rml.add("");
    rml.add(aturDesim.format(forecast.estimasiPoin().pada(i)));
    rml.add(aturDesim.format(forecast.intervalPrediksiAtas().pada(i)));
    rml.add(aturDesim.format(forecast.intervalPrediksiAtas().pada(i)));
     tb.addRow(rml);
}
tableRamal.setModel(tb);

但它仍返回零。

我已经在Google上搜索了它,但找不到答案。

1 个答案:

答案 0 :(得分:2)

您将重复使用相同的向量,并在末尾添加更多元素。

将代码更改为此:

for(int i=0; i<forecast.estimasiPoin().ukuran(); i++){
    Vector<Object> rml = new Vector<>();
    rml.add(i);
    rml.add("");
    rml.add(aturDesim.format(forecast.estimasiPoin().pada(i)));
    rml.add(aturDesim.format(forecast.intervalPrediksiAtas().pada(i)));
    rml.add(aturDesim.format(forecast.intervalPrediksiAtas().pada(i)));
    tb.addRow(rml);
}