指定したオブジェクトとこのインスタンスを比較し、これらの相対値を示す値を返します。
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 | value が UInt16 ではありません。 |
解説
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