gpt4 book ai didi

java - 比较字符串时使用 Comparable 接口(interface)

转载 作者:行者123 更新时间:2023-11-30 05:57:49 25 4
gpt4 key购买 nike

我搜索了这个问题,但我只发现了一个有点令人困惑的线索,所以我要在这里询问我希望得到一个更清晰的答案。

我有一项作业,要求使用 Comparable 接口(interface)按客户名称对数组中的对象进行排序。到目前为止,我只对整数进行了此操作,因此我不确定如何将字符串进行比较。我该怎么办呢?到目前为止,假设我要使用 a.name 与 this.name 进行比较:

public int comparedTo(Customer a)
{

} //end comparedTo

我还需要创建一个类来实现比较器接口(interface),以根据客户购买情况对值进行排序,我认为我做得正确,但我想在我开始抓狂之前确保它是错误的。这是我为此所做的:

class NameComparator implements Comparator{
public int compare(Object cust1, Object cust2){

String cust1Purch = ((Customer)cust1).purchase;
String cust2Purch = ((Customer)cust2).purchase;

return cust1Purch.compareTo(cust2Purch);
}

非常感谢任何帮助!

最佳答案

一切都好,但是你可以指定 Comparator 泛型类型,然后不需要转换对象:

class NameComparator implements Comparator<Customer>{
public int compare(Customer cust1, Customer cust2){

String cust1Purch = cust1.purchase;
String cust2Purch = cust2.purchase;

return cust1Purch.compareTo(cust2Purch);
}

关于java - 比较字符串时使用 Comparable 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5167868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com