多平台统一管理软件接口,如何实现多平台统一管理软件接口
342
2022-09-29
java compareTo和compare方法比较详解
这两个方法经常搞混淆,现对其进行总结以加深记忆。
compareTo(Object o)方法是java.lang.Comparable
compare(Object o1,Object o2)方法是java.util.Comparator
下面我们写一来看看上面两个方法是怎么用的:
首先,写一个User类,代码如下:
public class User implements Comparable
int id;
String name;
public User(int id,String name){
this.id = id;
this.name = name;
}
/*
* Getters and Setters
*/
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return http://name;
}
public void setName(String name) {http://
this.name = name;
}
@Override
public int compareTo(Object o) {
if(this ==o){
return 0;
}
else if (o!=null && o instanceof User) {
User u = (User) o;
if(id<=u.id){
return -1;
}else{
return 1;
}
}else{
return -1;
}
}
}
接qPjOaXn下来,我们写一个测试类Test:
public class Test{
//编写Comparator,根据User的id对User进行排序
private static final Comparator
public int compare(User o1, User o2) {
return o1.compareTo(o2);//运用User类的compareTo方法比较两个对象
}
};
public static void main(String[] args) {
ArrayList
User user1 = new User(1,"yueliming");
User user2 = new User(2,"yueliming");
Collections.sort(student, COMPARATOR);//用我们写好的Comparator对student进行排序
for(int i=0;i System.out.println(student.get(i).getId()); } } }
System.out.println(student.get(i).getId());
}
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~