JavaのComparableインタフェース

  同等のインタフェース機能は、このインタフェースクラスの大きさを比較するための比較対象のサイズ、対象実装compareToメソッドを介してインタフェースを提供する提供します。

  このメソッドは、int型、3例を返します。

  • 正の数を返し、現在のオブジェクトは、ターゲットオブジェクトよりも大きく、
  • 戻り値の負のは、現在のオブジェクトは、ターゲットオブジェクトよりも小さいです
  • 戻り値0は、現在のオブジェクトは、ターゲットオブジェクトに等しいです

  貯蔵容器が同等TreeSetのオブジェクトサイズの比較のために、これらの機能を実装するカスタムクラス、そうでなければエラーである場合TreeSetのオブジェクトは、(デフォルトの昇順により)ソーティング機能を提供します。

  

パブリック クラス TestCompareToの実装匹敵<TestCompareTo> {
     プライベート整数= nullを

    公共TestCompareTo(整数A){
         この .A = A。
    } 

    パブリック整数下駄は(){
         返します
    } 

    @Override 
    公共 のint のcompareTo(TestCompareTo 0){
         戻り 、この .A> OA?-1:(この .A == OA 0:1 )。
    } 

}
パブリック クラスのテスト{
     公共 静的 ボイドメイン(文字列[]引数){
         // テストTreeSetの 
        セット<TestCompareTo>セット= 新しい TreeSetの<> (); 
        set.add(新しい TestCompareTo(-10 )); 
        set.add(新しい TestCompareTo(-20 )); 
        set.add(新しい TestCompareTo(-30 )); 
        set.add(新しい TestCompareTo(0 )); 
        set.add(新しい TestCompareTo(10 )); 
        set.add(新しい TestCompareTo(-100 ));
        反復子反復子 = set.iterator()。
        一方、(iterator.hasNext()){ 
            TestCompareTo TMP = (TestCompareTo)iterator.next(); 
            System.out.println(tmp.getA())。
        } 
    } 
}

 

おすすめ

転載: www.cnblogs.com/chiweiming/p/11843056.html