Bản quyền thuộc về TITV.vn,
vui lòng không đăng tải lại nội dung từ trang này.
Video giải thích chi tiết
Code chi tiết
package vidu;
public class SinhVien implements Comparable {
private int maSinhVien;
private String hoVaTen;
private String tenLop;
private double diemTrungBinh;
public SinhVien(int maSinhVien, String hoVaTen, String tenLop, double diemTrungBinh) {
this.maSinhVien = maSinhVien;
this.hoVaTen = hoVaTen;
this.tenLop = tenLop;
this.diemTrungBinh = diemTrungBinh;
}
public int getMaSinhVien() {
return maSinhVien;
}
public void setMaSinhVien(int maSinhVien) {
this.maSinhVien = maSinhVien;
}
public String getHoVaTen() {
return hoVaTen;
}
public void setHoVaTen(String hoVaTen) {
this.hoVaTen = hoVaTen;
}
public String getTenLop() {
return tenLop;
}
public void setTenLop(String tenLop) {
this.tenLop = tenLop;
}
public double getDiemTrungBinh() {
return diemTrungBinh;
}
public void setDiemTrungBinh(double diemTrungBinh) {
this.diemTrungBinh = diemTrungBinh;
}
public String getTen() {
String s = this.hoVaTen.trim();
if(s.indexOf(" ")>=0) {
int vt = s.lastIndexOf(" ");
return s.substring(vt+1);
}else {
return s;
}
}
@Override
public int compareTo(SinhVien o) {
// <0
// =0
// >0
// Dua tren so sanh ten
// Ten: Adam, Barack Obama, Nguyen Van A , Tran Thi Thanh Yen
String tenThis = this.getTen();
String tenO=o.getTen();
return tenThis.compareTo(tenO);
}
}
package vidu;
public class Test {
public static void main(String[] args) {
SinhVien sv1 =new SinhVien(150, "Tran Van Thanh", "Lop 1", 9);
SinhVien sv2 =new SinhVien(100, "Nguyen Thi Thanh Hoa", "Lop 2", 8);
SinhVien sv3 =new SinhVien(199, "Nguyen Van An", "Lop 2", 8);
System.out.println(sv1.compareTo(sv2));
System.out.println(sv3.compareTo(sv1));
}
}
Sắp xếp dựa trên điểm tb:
Trả lờiXóa@Override
public int compareTo(SinhVien o) {
return this.diemTrungBinh - o.diemTrungBinh;
Chỉ cần như v thôi đúng kg thầy nhỉ?