相关疑难解决方法(0)

如何编写比较对象的compareTo方法?

我正在学习数组,基本上我有一个收集姓氏,名字和分数的数组.

我需要编写一个compareTo方法来比较姓氏和名字,以便列表可以按字母顺序从姓氏开始排序,然后如果两个人的姓氏相同,那么它将对第一个名称进行排序.

我很困惑,因为我书中的所有信息都是比较数字,而不是对象和字符串.

这是我到目前为止编码的内容.我知道这是错的,但它至少解释了我认为我在做什么:

public int compare(Object obj) // creating a method to compare 
{   
    Student s = (Student) obj; // creating a student object

    // I guess here I'm telling it to compare the last names?
    int studentCompare = this.lastName.compareTo(s.getLastName()); 

    if (studentCompare != 0)
        return studentCompare;
    else 
    {
        if (this.getLastName() < s.getLastName())
            return - 1;

        if (this.getLastName() > s.getLastName())
            return 1;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我知道<>符号是错误的,但就像我说我的书只告诉你如何使用compareTo.

java compareto comparable

29
推荐指数
2
解决办法
15万
查看次数

标签 统计

comparable ×1

compareto ×1

java ×1