如何同时进行字符串和值排序

时间:2018-03-12 02:52:51

标签: java arrays sorting

我想对计算结果进行排序,其中存在字符串和值,排序过程成功,但字符串存在问题。 string不遵循先前排序中的值。怎么办呢? getNamaDosen()为String,nilaiDosen为value,getJumlahBakcal()为数据量。

代码程序:

Object[][] data2 = new Object[getJumlahBakcal()][2];
Double [] nilaiDosen = new Double[getJumlahBakcal()];

for(int a=0; a<nilaiDosen.length; a++){
   for(int b=0; b<nilaiDosen.length-1; b++){
      if(nilaiDosen[b]<nilaiDosen[b+1]){
        double temp = nilaiDosen[b];
        nilaiDosen[b] =nilaiDosen[b+1];
        nilaiDosen[b+1] = temp;
      }
      for (int i = 0; i < getJumlahBakcal(); i++) {
          for (int j = 0; j < 3; j++) {
              if (j == 0) {
                  data2[i][j] = getNamaDosen()[i];
              } else if (j == 1) {
                  data2[i][j] = (nilaiDosen[i]);  
                }
           }
       }
    }
}
String[] header = {"Nama Dosen", "Prefensi"};
DefaultTableModel dtm = new DefaultTableModel(data2, header);
analisaVW.getRank().setModel(dtm);

图片说明:

Picture 1

1 个答案:

答案 0 :(得分:0)

  

字符串不遵循先前排序中的值

因为,您只是在交换价值。因此,您也希望遵循String值。然后,你应该同时交换String。

我认为,这是你交换价值的地方

  if(nilaiDosen[b]<nilaiDosen[b+1]){
    double temp = nilaiDosen[b];
    nilaiDosen[b] =nilaiDosen[b+1];
    nilaiDosen[b+1] = temp;
   // include code here to swap Sting value using same index
  }

现在,在交换值时,您还应该交换String值。