复制代码代码如下:
استيراد java.util.arraylist ؛
استيراد java.util.collections ؛
استيراد java.util.comparator ؛
استيراد java.util.list ؛
الطبقة العامة المقارنة بين الأدوات المقارنة <Suentity> {
/**
* param args
*/
الفراغ الثابت العام الرئيسي (سلسلة [] args) {
قائمة <Suentity> list = new ArrayList <Suentity> () ؛
stuentity stud1 = new stuentity () ؛
stud1.setage (10) ؛
stud1.setName ("ABC") ؛
stuentity stud2 = new stuentity () ؛
stud2.setage (10) ؛
stud2.setName ("BDC") ؛
stuentity stud3 = new stuentity () ؛
stud3.setage (5) ؛
stud3.setName ("BDD") ؛
stuentity stud4 = new stuentity () ؛
stud4.setage (30) ؛
stud4.setName ("aad") ؛
list.add (stud1) ؛
list.add (stud2) ؛
list.add (stud3) ؛
list.add (stud4) ؛
collections.sort (قائمة ، مقارنة جديدة ()) ؛
لـ (Stuentity Stud: List) {
System.out.println (stud.getage ()+":"+stud.getName ()) ؛
}
}
/**
*
*/
@تجاوز
Public Int مقارنة (Stuentity Stud1 ، Stuentity Stud2) {
// 根据姓名排序
int maxName = stud1.getName (). compareto (stud2.getName ()) ؛
إذا (maxName! = 0)
إرجاع maxname.
// 根据年龄排序
int maxage = stud1.getage ()-stud2.getage () ؛
// if (maxage! = 0)
إرجاع ماكساج.
}
}
: :
复制代码代码如下:
30: AAD
10: ABC
10: BDC
5: BDD
java 的比较器很有用 , 实现 实现 مقارنة 接口的 قارن () 这个回调方法来制定排序规则 , 然后调用 然后调用 collections.sort (قائمة ، مقارنات جديدة ()) ؛ 就可以将 القائمة 进行排序 , 很方便
使用时要注意 قارن () 方法中的 return 的先后顺序 , 优先的排序规则要写在前面
: :
复制代码代码如下:
/**
* 学生实体类
*
*/
الطبقة العامة stuentity {
Private Int StudentId ؛ // 学号
اسم السلسلة الخاصة ؛
عصر INT الخاص ؛
سلسلة جنسية خاصة ؛ // 性别
عموم int الخاص ؛ // 房间号
درجة السلسلة الخاصة ؛ // 学位
Private Int Grade ؛ // 年级
سلسلة خاصة devicenber ؛ // 设备号
عموم int private ؛ // 所属的小组
Private Int Javascore ؛ // Java 成绩
private int netscore ؛ // net 成绩
السلسلة العامة getDegree () {
درجة العودة
}
public void setDegree (درجة السلسلة) {
this.degree = درجة ؛
}
عام int getGrade () {
درجة العودة ؛
}
public void setgrade (int grade) {
this.grade = grade ؛
}
/**
* 初始化有参构造函数
*
* @param id
* param اسم
* @بارام العصر
* param الجنس
* Param Roomnumber
* param devicenumber
* Param GroupNumber
* param javascore
* param netscore
*/
stuentity العام (اسم السلسلة ، int ، string sex ، int roomnumber ،
String devicenbram ، int groupnumber ، int javascore ، int netscore) {
this.name = name ؛
this.age = العمر ؛
this.Sex = الجنس ؛
this.roomnumber = roomnumber ؛
this.devicenumber = devicenumber ؛
this.groupnumber = GroupNumber ؛
this.javascore = javascore ؛
this.netscore = netscore ؛
}
/**
* 无参构造函数
*/
stuentity العامة () {
}
الجمهور int getjavascore () {
إرجاع Javascore ؛
}
public void setjavascore (int javascore) {
this.javascore = javascore ؛
}
الجمهور int getNetscore () {
إرجاع netscore ؛
}
public void setNetScore (int netscore) {
this.netscore = netscore ؛
}
الجمهور int getStudentId () {
إرجاع الطالب
}
setStudentId public void (int studentId) {
this.studentId = studentId ؛
}
السلسلة العامة getName () {
اسم العودة
}
public void setName (اسم السلسلة) {
this.name = name ؛
}
الجمهور int getage () {
عودة العمر ؛
}
public void setage (int age) {
this.age = العمر ؛
}
السلسلة العامة getSex () {
إرجاع الجنس
}
public void setSex (سلسلة الجنس) {
this.Sex = الجنس ؛
}
العام int getRoomNumber () {
إرجاع العقم.
}
public void setroomnumber (int roomnumber) {
this.roomnumber = roomnumber ؛
}
السلسلة العامة getDevicenumber () {
إرجاع devicenber.
}
public void setDevicenber (String devicenumber) {
this.devicenumber = devicenumber ؛
}
العام int getGroupnumber () {
عودة Groupnumn.
}
public void setgroupnumber (int groupnumber) {
this.groupnumber = GroupNumber ؛
}
}