2017-11-28 2 views
1

Der Konstruktor JTable gibt mir einen Fehler konstruieren, der sagt:kann nicht JTable mit int [] [] und String [] Argumente

„Der Konstruktor JTable (int [] [], String [ ]) ist nicht definiert“

obwohl es einen Konstruktor JTable(Object[][], Object[]) (Calcul.apartements ist vom Typ int[][])

String[] colonnes = {"Appartements", "Prix Milion de Cts", "Tempd duTrajet/C.v (en min)", "Superficie (en m2)", "Etage"}; 
    table = new JTable(Calcul.appartements, colonnes); 
+1

'int' ist kein' Object'. Versuchen Sie entweder, das Array als 'Object [] []' zu definieren und 'int' hineinzulegen oder stattdessen 'Integer [] []' zu verwenden. – MadProgrammer

+0

@AJNeufeld Was ich sagen wollte und was meine Finger gesagt haben scheinen weit auseinander zu sein zu oft: P – MadProgrammer

Antwort

1

Sie haben zwei Möglichkeiten hat:

  1. Ihre Calcul.appartements Daten ändern Object[][] oder Integer[][] sein (wie in den Kommentaren von @MadProgrammer erwähnt)
  2. Ihr eigenes Tischmodell implementieren.

das Tischmodell implementieren könnte so einfach sein wie:

TableModel dataModel = new AbstractTableModel() { 
     public int getColumnCount() { return colonnes.length; } 
     public String getColumnName(int col) { return colonnes[col]; } 
     public int getRowCount() { return Calcul.appartements.length; } 
     public Object getValueAt(int row, int col) { Calcul.appartements[row][col]; } 
    }; 
JTable table = new JTable(dataModel); 
Verwandte Themen