TimeSpan.CompareTo Method (Object)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Compares this instance to a specified object and returns an integer that indicates whether the time interval represented by this instance is longer than, equal to, or shorter than the time interval represented by the specified object.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Function CompareTo ( _
value As Object _
) As Integer
public int CompareTo(
Object value
)
Parameters
- value
Type: System.Object
An object to compare, or nulla null reference (Nothing in Visual Basic).
Return Value
Type: System.Int32
One of the values in the following table.
Value |
Description |
---|---|
-1 |
The value of this instance is shorter than the value of value. |
0 |
The value of this instance is equal to the value of value. |
1 |
The value of this instance is longer than the value of value. -or- value is nulla null reference (Nothing in Visual Basic). |
Implements
Remarks
Any instance of TimeSpan, regardless of its value, is considered greater than nulla null reference (Nothing in Visual Basic).
The value parameter must be an instance of TimeSpan or nulla null reference (Nothing in Visual Basic); otherwise, an exception is thrown.
Examples
The following code example compares several TimeSpan structures and other objects to a reference TimeSpan structure using the CompareTo method.
' Example of the TimeSpan.CompareTo( Object ) and
' TimeSpan.Equals( Object ) methods.
Module Example
' Compare the TimeSpan to the Object parameters,
' and display the Object parameters with the results.
Sub CompTimeSpanToObject(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal Left As TimeSpan, ByVal Right As Object, _
ByVal RightText As String)
outputBlock.Text &= String.Format("{0,-33}{1}", "Object: " & RightText, _
Right) & vbCrLf
outputBlock.Text &= String.Format("{0,-33}{1}", "Left.Equals( Object ) & vbCrLf", _
Left.Equals(Right))
outputBlock.Text &= String.Format("{0,-33}", "Left.CompareTo( Object )")
' Catch the exception if CompareTo( ) throws one.
Try
outputBlock.Text &= String.Format("{0}" & vbCrLf, _
Left.CompareTo(Right)) & vbCrLf
Catch ex As Exception
outputBlock.Text &= String.Format("Error: {0}" & vbCrLf, ex.Message) & vbCrLf
End Try
End Sub
Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
Dim Left As New TimeSpan(0, 5, 0)
outputBlock.Text &= String.Format( _
"This example of the TimeSpan.Equals( Object ) " & _
"and " & vbCrLf & "TimeSpan.CompareTo( Object ) " & _
"methods generates the " & vbCrLf & _
"following output by creating several " & _
"different TimeSpan " & vbCrLf & "objects and " & _
"comparing them with a 5-minute TimeSpan." & vbCrLf) & vbCrLf
outputBlock.Text &= String.Format("{0,-33}{1}" & vbCrLf, _
"Left: TimeSpan( 0, 5, 0 )", Left) & vbCrLf
' Create objects to compare with a 5-minute TimeSpan.
CompTimeSpanToObject(outputBlock, Left, New TimeSpan(0, 0, 300), _
"TimeSpan( 0, 0, 300 )")
CompTimeSpanToObject(outputBlock, Left, New TimeSpan(0, 5, 1), _
"TimeSpan( 0, 5, 1 )")
CompTimeSpanToObject(outputBlock, Left, New TimeSpan(0, 5, -1), _
"TimeSpan( 0, 5, -1 )")
CompTimeSpanToObject(outputBlock, Left, New TimeSpan(3000000000), _
"TimeSpan( 3000000000 )")
CompTimeSpanToObject(outputBlock, Left, 3000000000L, "Long 3000000000L")
CompTimeSpanToObject(outputBlock, Left, "00:05:00", _
"String ""00:05:00""")
End Sub
End Module
' This example of the TimeSpan.Equals( Object ) and
' TimeSpan.CompareTo( Object ) methods generates the
' following output by creating several different TimeSpan
' objects and comparing them with a 5-minute TimeSpan.
'
' Left: TimeSpan( 0, 5, 0 ) 00:05:00
'
' Object: TimeSpan( 0, 0, 300 ) 00:05:00
' Left.Equals( Object ) True
' Left.CompareTo( Object ) 0
'
' Object: TimeSpan( 0, 5, 1 ) 00:05:01
' Left.Equals( Object ) False
' Left.CompareTo( Object ) -1
'
' Object: TimeSpan( 0, 5, -1 ) 00:04:59
' Left.Equals( Object ) False
' Left.CompareTo( Object ) 1
'
' Object: TimeSpan( 3000000000 ) 00:05:00
' Left.Equals( Object ) True
' Left.CompareTo( Object ) 0
'
' Object: Long 3000000000L 3000000000
' Left.Equals( Object ) False
' Left.CompareTo( Object ) Error: Object must be of type TimeSpan.
'
' Object: String "00:05:00" 00:05:00
' Left.Equals( Object ) False
' Left.CompareTo( Object ) Error: Object must be of type TimeSpan.
// Example of the TimeSpan.CompareTo( Object ) and
// TimeSpan.Equals( Object ) methods.
using System;
class Example
{
// Compare the TimeSpan to the Object parameters,
// and display the Object parameters with the results.
static void CompTimeSpanToObject(System.Windows.Controls.TextBlock outputBlock, TimeSpan Left, object Right,
string RightText)
{
outputBlock.Text += String.Format("{0,-33}{1}", "Object: " + RightText,
Right) + "\n";
outputBlock.Text += String.Format("{0,-33}{1}", "Left.Equals( Object )",
Left.Equals(Right)) + "\n";
outputBlock.Text += String.Format("{0,-33}", "Left.CompareTo( Object )");
// Catch the exception if CompareTo( ) throws one.
try
{
outputBlock.Text += String.Format("{0}\n", Left.CompareTo(Right)) + "\n";
}
catch (Exception ex)
{
outputBlock.Text += String.Format("Error: {0}\n", ex.Message) + "\n";
}
}
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
TimeSpan Left = new TimeSpan(0, 5, 0);
outputBlock.Text += String.Format(
"This example of the TimeSpan.Equals( Object ) " +
"and \nTimeSpan.CompareTo( Object ) methods generates " +
"the \nfollowing output by creating several different " +
"TimeSpan \nobjects and comparing them with a " +
"5-minute TimeSpan.\n") + "\n";
outputBlock.Text += String.Format("{0,-33}{1}\n",
"Left: TimeSpan( 0, 5, 0 )", Left) + "\n";
// Create objects to compare with a 5-minute TimeSpan.
CompTimeSpanToObject(outputBlock, Left, new TimeSpan(0, 0, 300),
"TimeSpan( 0, 0, 300 )");
CompTimeSpanToObject(outputBlock, Left, new TimeSpan(0, 5, 1),
"TimeSpan( 0, 5, 1 )");
CompTimeSpanToObject(outputBlock, Left, new TimeSpan(0, 5, -1),
"TimeSpan( 0, 5, -1 )");
CompTimeSpanToObject(outputBlock, Left, new TimeSpan(3000000000),
"TimeSpan( 3000000000 )");
CompTimeSpanToObject(outputBlock, Left, 3000000000L,
"long 3000000000L");
CompTimeSpanToObject(outputBlock, Left, "00:05:00",
"string \"00:05:00\"");
}
}
/*
This example of the TimeSpan.Equals( Object ) and
TimeSpan.CompareTo( Object ) methods generates the
following output by creating several different TimeSpan
objects and comparing them with a 5-minute TimeSpan.
Left: TimeSpan( 0, 5, 0 ) 00:05:00
Object: TimeSpan( 0, 0, 300 ) 00:05:00
Left.Equals( Object ) True
Left.CompareTo( Object ) 0
Object: TimeSpan( 0, 5, 1 ) 00:05:01
Left.Equals( Object ) False
Left.CompareTo( Object ) -1
Object: TimeSpan( 0, 5, -1 ) 00:04:59
Left.Equals( Object ) False
Left.CompareTo( Object ) 1
Object: TimeSpan( 3000000000 ) 00:05:00
Left.Equals( Object ) True
Left.CompareTo( Object ) 0
Object: long 3000000000L 3000000000
Left.Equals( Object ) False
Left.CompareTo( Object ) Error: Object must be of type TimeSpan.
Object: string "00:05:00" 00:05:00
Left.Equals( Object ) False
Left.CompareTo( Object ) Error: Object must be of type TimeSpan.
*/
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.