请教一个用JAVA实现的二维表格排序问题。。。

heianyishu 2007-10-19 12:03:15
有一个二维表格,表格中的每一列分别有一个列名,表格中的数据为数字类型,要求编写一个程序,能够按照用户制定的列顺序以及每个列的升降序进行排序。
例如
Id age score1 score2 score3
1 20 45 56 67
3 33 12 98 100
....
7 77 33 12 91

用户可以制定按照Age(升序),score2(降序)的顺序对数据进行排序。

请教用java代码怎么写~~谢谢
...全文
103 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2007-10-19
  • 打赏
  • 举报
回复
have a try

sort(String[][] src, int col) {
if (src == null || src.length == 0) return;
if (col<0 || col>=src[0].length) return;

int len = src[0].length;
String [] tmp = new String[src[0].length];
for (int i=0; i<src.length-1; i++) {
for (int j=0; j<src.length-i-1; j++) {
if (src[j][col].compareTo(src[j+1][col]) > 0) { //这里是字符串比较,如果是数字比较,请把字符串改成数字在比较,即if (Integer,parseInt(src[j][col]).intValue() > Integer,parseInt(src[j+1][col]).intValue()) {
System.copyarray(tmp, src[j], len);
System.copyarray(src[j], src[j+1], len);
System.copyarray(src[j+1], tmp, len);
}
}
}
}

src是你要排序的二维数组,col是你要排序的列的索引,第一列是0,第二列是1,依次类推,按LZ的要求,Id列是0,Age列是1,依此类推

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧