私はBankAccount
クラスを作成しています。このクラスでは、たくさんの銀行口座を配列リストに入れ、アカウント番号に従ってソートします。次のように私はcompareTo()
方法を書いた:私の主な方法、accounts
で@ JavaのcompareTo()メソッドをオーバーライドすることができません
public int compareTo(BankAccount another){
if (Integer.parseInt(this.getAccountNumber()) > Integer.parseInt(another.getAccountNumber()))
return 1;
else if(Integer.parseInt(this.getAccountNumber()) < Integer.parseInt(another.getAccountNumber()))
return -1;
else
return 0;
は、配列リストのための変数です。 Collections.sort(accounts);
をしようとするとできません。 "実引数と仮引数の長さが異なるため、推論された型が宣言された境界に適合しないため、引数からインスタンス化できません"というエラーが表示されます。これは私がcompareTo()
メソッドをオーバーライドしていないためだと思ったが、@Override it
を試してみると、「メソッドはスーパータイプからメソッドをオーバーライドしたり実装していない」と言われています。私は問題が何であるか理解していない。どんな助けもありがとう。
があなたの 'BankAccount'クラス*は、それが' Comparableを '実装することを宣言*していますか? –