0
バブルソートされた動的な配列をJPanelに表示する必要がありますが、配列をソートした後はJPanelに表示されません。これはルーキーミスかもしれないので、プログラミング。整数の配列をJPanelにソートして表示
これはこれまでのコードです。
import java.util.ArrayList;
import java.util.List;
import javax.swing.JTextField;
public class exH extends javax.swing.JFrame {
private List<JTextField> arrayA;
private List<JTextField> temp;
int n=0;
public exH() {
initComponents();
arrayA=new ArrayList();
temp=new ArrayList();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
n=Integer.parseInt(a.getText());
panel.removeAll();
arrayA.clear();
for (int i=0;i<n;i++){
JTextField txt =new JTextField();
panel.add(txt);
arrayA.add(txt);
panel.updateUI();
}
a.setText("");
// TODO add your handling code here:
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
for (int i=0;i<n-1;i++){
for (int j=0;j<n-1;i++){
int conv1 = Integer.parseInt(String.valueOf(arrayA.get(j)));
int conv2 = Integer.parseInt(String.valueOf(arrayA.get(j+1)));
if (conv1>conv2){
temp.set(0,arrayA.get(j+1));
arrayA.set(j+1,arrayA.get(j));
arrayA.set(j,temp.get(0));
}
}
}
}
これはインターフェイスの見た目です。
こんにちは、ようこそ。コードをインデントすることをお勧めします。インデントされていないコードは読みにくいです(回答が得られる可能性が低くなります)。 –
_ "JPanelには表示されません。 JPanelではなく、リスト内のインスタンスの順序したがって、配列をソートした後にパネルを再構築する必要があります – AxelH