JAVA如何在本练习中使用compareTo比较整数
我试着做这个练习:我有一个学生有名字、姓氏和号码,我想按号码排列学生。。如果我想按姓名或姓氏订购,这似乎很容易,但我不知道怎么做。。 这是我的代码:
public class Student implements Comparable<Student> {
private String name;
private String surname;
private int number;
public Student(String n, String s, int m) {
name = n;
surname = s;
number = m;
}
public String getName() {
return name;
}
public String getSurname() {
return surname;
}
public int getmatricola() {
return number;
}
//CompareTo Name
public int compareTo(Student otherObject) {
return name.compareTo(otherObject.getName());
}
}
//TESTER
ArrayList<Student> list = new ArrayList<Student>();
System.out.print("\n ORDER BY NUMBER \n");
Collections.sort(list);
for (int i = 0; i < list.size(); i++) {
Student s = list.get(i);
String std = s.getAll();
System.out.println(std);
}
# 1 楼答案
那么为什么你的数字是一个整数,你可以减去这个数字并返回差值:
# 2 楼答案
您可以实现以下功能:
# 3 楼答案
试着这样做。。。应该有用 //比较名称 公共整数比较(学生其他对象){ if(this.getmatricola()>;其他对象。getmatricola()) 返回1; 其他的 返回-1; }