我想很多人都遇到过这个问题,你有一个由字符串分量和整数组成的二维数组。前任。
`String[][] data = {{"Name1","5"}, {"Name2","10"},{"Name3","1"}, {"Name4","3"}};`
现在您想按整数(在本例中为球员得分)对该二维数组进行排序,但是您希望匹配的名称与球员得分一起移动。这就是我所拥有的,但结果与预期的相差甚远。
private void sort(){
boolean sort;
int current, next;
do{
sort = true;
for (int i = 0; i < data.length - 1; i++){
if (data[i][1] !=null && data[i+1][1] != null){
current = Integer.parseInt(data[i][1]);
next = Integer.parseInt(data[i+1][1]);
if(current > next){
String temp = "";
data[i][1] = Integer.toString(next);
data[i+1][1] = Integer.toString(current);
data[i][0] = temp;
data[i][0] = data[i+1][1];
data[i+1][0] = temp;
sort = false;
}
}
}
}while(!sort);
}
如果你问为什么人们会使用一个普通的二维数组,那是因为在 JFRAME 中,一个 JTable 需要一个二维数组来存储数据。