今天就跟大家聊聊有关java中Comparable接口排序怎么实现自定义,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
实例如下所示:
class Student implements Comparable{
String name;
int gpa;
@Override
public int compareTo(Object arg0) {
// TODO Auto-generated method stub
Student s = (Student)arg0;
if(gpa == s.gpa) return name.compareTo(s.name);
else if(gpa < s.gpa) return -1;
else if(gpa > s.gpa) return 1;
else return 0;
}
}
class Test {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int n = in.nextInt();
Student[] s = new Student[n];
for(int i = 0;i < n;i ++){
s[i] = new Student();
s[i].name = in.next();
s[i].gpa = in.nextInt();
}
Arrays.sort(s);
for (Student ss : s)
{
System.out.println(ss.name);
System.out.println(ss.gpa);
}
}
}
看完上述内容,你们对java中Comparable接口排序怎么实现自定义有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注天达云行业资讯频道,感谢大家的支持。