首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

对于Comparator的使用

2011-12-22 
关于Comparator的使用想实现整数数组从大到小排序,使用Comparator,写了如下代码,为什么编译不通过啊,那里

关于Comparator的使用
想实现整数数组从大到小排序,使用Comparator,写了如下代码,为什么编译不通过啊,那里有问题?
[code]
import   java.util.Arrays;
import   java.util.Comparator;


public   class   Test   {
public   static   void   main(String[]   args)   {
int[]   a   =   {1,6,3,7,2,9};
Arrays.sort(a,   new   Cmp());
}
}
class   Cmp   implements   Comparator <Integer>   {

public   int   compare(Integer   o1,   Integer   o2)   {
return   o2   -   o1;
}
}

[/code]

[解决办法]
Arrays.sort函数有接受int和Comparator的版本吗?好像没有吧,只有:
static void sort(int[] a)
static void sort(int[] a, int fromIndex, int toIndex)
[解决办法]
import java.util.Arrays;
import java.util.Comparator;


public class Test {
public static void main(String[] args) {
Integer[] a = {1,6,3,7,2,9};
Arrays.sort(a, new Cmp());
for(int i=0;i <a.length;i++)
{
System.out.println(a[i]);
}
}
}
class Cmp implements Comparator <Integer> {

public int compare(Integer o1, Integer o2) {
int i=o2-o1;
if(i> 0)
return 1;
if(i <0)
return -1;
else
return 0;
}
}

热点排行