次の方法で共有


UInt16.CompareTo メソッド

指定したオブジェクトとこのインスタンスを比較し、これらの相対値を示す値を返します。

UInt16 型は CLS との互換性がありません。CLS との互換性が必要な場合は、代わりに Int32 を使用してください。Int16 は、元の値が UInt16.MaxValue の半分以下の場合に使用されます。CLS との互換性に関する詳細については 「共通言語仕様の概要」 を参照してください。

Public Overridable Function CompareTo( _
   ByVal value As Object _) As Integer
[C#]
public virtual int CompareTo(objectvalue);
[C++]
public: virtual int CompareTo(Object* value);
[JScript]
public function CompareTo(
   value : Object) : int;

パラメータ

  • value
    比較対象のオブジェクト、または null 参照 (Visual Basic では Nothing) 。

戻り値

このインスタンスと value の相対値を示す符号付き数値。

戻り値 説明
0 より小さい このインスタンスは value よりも小さくなっています。
0 このインスタンスは value と等価です。
0 より大きい このインスタンスは value よりも大きくなっています。

または

value が null 参照 (Visual Basic では Nothing) です。

例外

例外の種類 条件
ArgumentException valueUInt16 ではありません。

解説

UInt16 のすべてのインスタンスは、その値に関係なく、 null 参照 (Visual Basic では Nothing) より大きいと見なされます。

value は null 参照 (Nothing) であるか、または UInt16 のインスタンスである必要があります。それ以外の場合は、例外がスローされます。

使用例

[C#, C++, JScript] CompareTo メソッドを次のサンプルで示します。

 
public class Temperature : IComparable {
    /// <summary>
    /// IComparable.CompareTo implementation.
    /// </summary>
    public int CompareTo(object obj) {
        if(obj is Temperature) {
            Temperature temp = (Temperature) obj;

            return m_value.CompareTo(temp.m_value);
        }
        
        throw new ArgumentException("object is not a Temperature");    
    }

    // The value holder
    protected ushort m_value;

    public ushort Value {
        get {
            return m_value;
        }
        set {
            m_value = value;
        }
    }
}

[C++] 
public __gc class Temperature : public IComparable {
    /// <summary>
    /// IComparable.CompareTo implementation.
    /// </summary>
// The value holder
protected:
    short m_value;

public:
    Int32 CompareTo(Object* obj) {
        if(obj->GetType() == __typeof(Temperature)) {
            Temperature* temp = dynamic_cast<Temperature*>(obj);
            return m_value.CompareTo(__box(temp->m_value));
        }

        throw new ArgumentException("object is not a Temperature");
    };

    __property short get_Value() {
        return m_value;
    };

    __property void set_Value( short value) {
        m_value = value;
    };

    __property short get_Celsius() {
        return (short)((m_value-32)/2);
    };

    __property void set_Celsius( short value) {
        m_value = (value*2+32);
    };
};

[JScript] 
public class Temperature implements IComparable {
    /// <summary>
    /// IComparable.CompareTo implementation.
    /// </summary>
    public function CompareTo(obj) : int {
        if(obj.GetType() == Temperature) {
            var temp : Temperature = Temperature(obj);

            return m_value.CompareTo(temp.m_value);
        }
        
        throw new ArgumentException("object is not a Temperature");    
    }

    // The value holder
    protected var m_value : ushort;

    public function get Value() : ushort {
        return m_value;
            }
            
            public function set Value(value : ushort) {                        
        m_value = value;
    }
}

[Visual Basic] Visual Basic のサンプルはありません。C#、C++、および JScript のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

UInt16 構造体 | UInt16 メンバ | System 名前空間 | Equals