Java 公共类<;通用类型>;实现可比性

Java 公共类<;通用类型>;实现可比性,java,comparable,compareto,implements,Java,Comparable,Compareto,Implements,我有一个公共类帐户,我想用comparable实现,我的问题如下: 我怎样才能使余额最低的账户在我的比较中是“最小的” public class Account implements Comparable<Account>{ private double balance; private String acctNum; public Account(String number, double initBal){ balance = initBal;

我有一个公共类帐户,我想用comparable实现,我的问题如下:

我怎样才能使余额最低的账户在我的比较中是“最小的”

public class Account implements Comparable<Account>{
  private double balance;
  private String acctNum;

  public Account(String number, double initBal){
      balance = initBal;
      acctNum = number;
  }
  public double getBalance(){
      return balance;
  }
  .....


 public int compareTo(Account other) {
         ????????
  }
公共类账户实现可比性{
私人双平衡;
私有字符串帐户;
公共帐户(字符串编号,双初始值){
余额=初始余额;
acctNum=数量;
}
公共双getBalance(){
收益余额;
}
.....
公共int比较(其他科目){
????????
}
该方法必须返回:

  • 负整数,如果该值小于其他值
  • 如果此值等于其他值,则为零
  • 如果该值大于或等于其他值,则为正整数
如果值接近
Double.MAX\u值
Double.MIN\u值
,则仅执行
返回this.balance-other.balance会产生无效结果,因此应使用:

该方法必须返回:

  • 负整数,如果该值小于其他值
  • 如果此值等于其他值,则为零
  • 如果该值大于或等于其他值,则为正整数
如果值接近
Double.MAX\u值
Double.MIN\u值
,则仅执行
返回this.balance-other.balance会产生无效结果,因此应使用:


最简单的实现方法是使用
Double
作为
balance
的类型,并简单地调用
compareTo
方法:

return balance.compareTo(other);
我并不是说这是最好的,但这足以作为一个开始


请注意,处理
null
s取决于您的实现。

实现的最简单方法是使用
Double
作为
balance
的类型,只需调用
compareTo
方法:

return balance.compareTo(other);
我并不是说这是最好的,但这足以作为一个开始


请注意,处理
null
s由您来实现。

您读过该方法吗?可能对您有帮助。您读过该方法吗?可能对您有帮助。这不会编译。这不是自动装箱的工作方式。@AndyTurner它说使用
Double
。它不会编译,因为
other
不是
Double
@PaulBoddington它不会编译,因为
balance
是一个
双精度
,而不是
双精度
,你不能在
双精度
@上调用
compareTo
,然后再次阅读完整的答案……这是一个奇怪的答案,但这不是问题所在。@PaulBoddington。这不会编译。这不是autobo的方式xing有效。@AndyTurner它说使用
Double
。它不会编译,因为
其他
不是
Double
@PaulBoddington它不会编译,因为
balance
Double
,而不是
Double
,并且你不能在
Double
上调用
compareTo
。@AndyTurner阅读完整的answ呃……这是一个奇怪的答案,但这不是问题所在。@PaulBoddington。