将java翻译成c#.net

jvhmr 2008-01-20 11:55:04
给二维数组排序
下载源代码



〖 作者:bernardvai 〗〖 大小:1k 〗〖 发布日期:2006-12-20 〗〖 浏览:0 〗

二维数组排序实例:

import java.util.*;
public class TwoDimArrayTest {
public static void main(String[] args) {
String[][] arr = {{"B","Z","K"},
{"C","X","L"},
{"A","Y","M"}} ;

//缺省(按0列升序)
Arrays.sort(arr, new TwoDimArrayComparator());
printArray(arr);

//按0列降序
Arrays.sort(arr, new TwoDimArrayComparator(0,-1));
printArray(arr);

//按1列升序
Arrays.sort(arr, new TwoDimArrayComparator(1));
printArray(arr);

//按1列降序
Arrays.sort(arr, new TwoDimArrayComparator(1,-1));
printArray(arr);

//按2列升序
Arrays.sort(arr, new TwoDimArrayComparator(2));
printArray(arr);

//按2列降序
Arrays.sort(arr, new TwoDimArrayComparator(2,-1));
printArray(arr);
}
public static void printArray(String[][] arr) {
for (int i= 0; i< arr.length ; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j] +"\t");
}
System.out.println();
}
System.out.println("======================");
}
}



class TwoDimArrayComparator implements Comparator{
private int keyColumn = 0;
private int sortOrder = 1;

public TwoDimArrayComparator () {}
public TwoDimArrayComparator (int keyColumn) {
this.keyColumn = keyColumn;
}
public TwoDimArrayComparator (int keyColumn,int sortOrder) {
this.keyColumn = keyColumn;
this.sortOrder = sortOrder;
}

public int compare(Object a, Object b) {
if (a instanceof String[]) {
return sortOrder * ((String[])a)[keyColumn].compareTo(((String[])b)[keyColumn]);
} else if (a instanceof int[]){
return sortOrder * (((int[])a)[keyColumn] - ((int[])b)[keyColumn]);
} else {
return 0;
}
}
}
运行结果:

C:\java>java TwoDimArrayTest
A Y M
B Z K
C X L
======================
C X L
B Z K
A Y M
======================
C X L
A Y M
B Z K
======================
B Z K
A Y M
C X L
======================
B Z K
C X L
A Y M
======================
A Y M
C X L
B Z K
======================


...全文
94 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodmrning 2008-01-20
  • 打赏
  • 举报
回复
关注
jvhmr 2008-01-20
  • 打赏
  • 举报
回复
自己搞定了.

62,623

社区成员

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

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