2017-03-06 5 views
0

私は9列あり、ループ内のデータを計算し、異なる列にデータを書きたいのですが、どの列データが正確であるか?データを書き込むための正確な列

https://imgur.com/a/vHIiN

これは何私である:私はこれは私が欲しいものである(wynik < 2)場合、列を変更したいが、それは同じセルに日付を書いているためtable.setValueAtが役に立たない

取得:

https://imgur.com/a/qG3pv

私のコードからのセクションがあります:

int[] arr = { 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 
       20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 
       36, 37, 38, 39, 40 }; 

double[] walce = { 257.175, 263.525, 304.8, 323.85, 333.375, 396.875, 415.925, 
        454.025, 638.175 }; 
int w = 0; 

for (int i = 0; i < arr.length; i++) { 
    wynik = (walce[w]/arr[i])-wartoscWysokoscEtykiety; 

    model.addRow(new Object[]{ 
     wynik, 
    }); 

    if (wynik < 2) { 
     table.setValueAt(wynik, i, w); 
     w = w +1; 
     i=0; 
    } 

私のコード全体はwklej.org/id/3057183/です。

+0

私はあなたの要件をかなり得ていません。 'JTable'にあなたのデータをどのように表示したいのかを正確に示してください。 –

+0

'i'(ループ制御変数)を0にリセットすることは危険であり、読めないコードを生成することは確実です。あなたのループはいつでも終了しますか? –

+0

また、あなたのコードの現在の動作は、希望とはどのように違うのですか?具体的にしてください。 –

答えて

0

私はあなたのコードを理解しようとしましたが、私のポーランド語(それですか?)で十分ではありません、私は申し訳ありません。

代わりに、いくつかの曖昧な提案をする必要があります。 arr要素、および列インデックスwを索引付けするために使用するループ制御変数(i)があります。ループの途中でiを変更しないでください(i=0;を実行しないでください)。ループが停止しません。あるいは悪いことに、実際には、読者がそれが止まるとは思わない。誰かがそれを読んで維持するためのコードを書いてください。代わりに、行インデックスを導入します。次に、行インデックスとテーブルモデル内の行数が等しい場合にのみ、新しい行を追加してください。

arrの最初から新しい列に移動するときに最初からやり直していたのであれば、私は正しいデザインがダブルループであると信じています:wが0から8になる外側ループ。行の上に。それで、同じセルをもう一度書いていないことを確認するのはとても難しいことではありません。

関連する問題