最近遇到了一道多条件排序题,类似于“something有A,B,C三个属性,先比较A,A条件相同时再比较B,B条件相同时再比较C,排序输出”的形式。这类题目用C/C++解决起来会很顺手,可以用结构体,结合sort和compare,就能完成整个思路。但是我们如何用Java来解决这个问题呢。Java是面向对象的语言,没有结构体的概念,我们应该定义类。
比方说,用一个球队排名问题来举例子。
现在对象是球队信息Info,有四个属性:球队名name、球队的积分x、净胜球y、进球数z。那么我们这样定义类:
class Info {
private String name;
private int x;
private int y;
private int z;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getx() {
return x;
}
public void setx(int x) {
this.x = x;
}
public int gety() {
return y;
}
public void sety(int y) {
this.y = y;
}
public int getz() {
return z;
}
public void setz(int z) {
this.z = z;
}
}