在java中按列对数据进行排序

时间:2013-09-24 23:44:18

标签: java swing sorting jtable

所以我拥有所有这些数据,我最终将它们放入一个要显示到JTable中的对象中。我需要做的是按平均值对所有数据进行排序,并以排序的方式将它们提供给JTable的Object,以平均值显示从高到低的数据。

这是我的所有数据

private String[] Names = new String[10];
private char[] Sex = new char[10];
private int[][] Score = new int[10][5];
private double[] Averages = new double[10];
private char[] LetterGrades = new char[10];

这就是我在未排序的

中提供它的方式
Object[][] data = new Object[10][9];
   for(int i = 0; i < 10; i++){
      data[i][0] = Names[i];
      data[i][1] = Sex[i];
      data[i][2] = Score[i][0];
      data[i][3] = Score[i][1];
      data[i][4] = Score[i][2];
      data[i][5] = Score[i][3];
      data[i][6] = Score[i][4]
      data[i][7] = Averages[i];
      data[i][8] = LetterGrades[i];
    }

我一直在考虑使用ArrayList来实现它,但我似乎无法将其包含在如何将其提供到数组列表中,而不是通过Average列对其进行排序。我不确定我是否可以对一个物体进行排序。任何洞察力或正确方向上的观点都会很棒。

1 个答案:

答案 0 :(得分:4)

JTable内置了排序功能。

您可以致电table.setAutoCreateRowSorter(true);

来激活它

有关详细信息,请参阅Sorting and Filtering