UInt16.CompareTo方法用于将当前实例与指定对象或另一个UInt16实例进行比较。它返回一个整数,该整数显示当前实例的值是小于,等于还是大于指定对象或另一个UInt16实例的值。此方法的重载列表中有2种方法,如下所示:
- CompareTo(UInt16)方法
- CompareTo(Object)方法
UInt16.CompareTo(UInt16)方法
此方法用于将当前实例与指定的16位无符号整数进行比较,并返回一个整数,该整数显示当前实例的值是否小于,等于或大于指定的16位无符号整数的值。
句法:
public int CompareTo (ushort value);
在这里,它需要一个无符号整数进行比较。
返回值:返回一个32位带符号的数字,指示当前实例和value参数的相对值,如下所示:
- 小于零:如果当前实例<值
- 零:如果当前实例=值
- 大于零:如果当前实例>值
下面的程序说明了UInt16.CompareTo(UInt16)方法的用法
范例1:
// C# program to demonstrate the
// UInt16.CompareTo(UInt16) Method
using System;
class GFG {
// Main Method
public static void Main()
{
// Declaring and initializing value1
ushort value1 = 7;
// Declaring and initializing value2
ushort value2 = 98;
// using CompareTo() method
int status = value1.CompareTo(value2);
// checking the status
if (status > 0)
Console.WriteLine("{0} is greater than {1}",
value1, value2);
else if (status < 0)
Console.WriteLine("{0} is less than {1}",
value1, value2);
else
Console.WriteLine("{0} is equal to {1}",
value1, value2);
}
}
输出:
7 is less than 98
范例2:
// C# program to demonstrate the
// UInt16.CompareTo(UInt16) Method
using System;
class GFG {
// Main Method
public static void Main()
{
// calling get() method
get(54, 77);
get(70, 95);
get(10, 24);
get(45, 45);
}
// defining get() method
public static void get(ushort value1,
ushort value2)
{
// using CompareTo() method
int status = value1.CompareTo(value2);
// checking the status
if (status > 0)
Console.WriteLine("{0} is greater than {1}",
value1, value2);
else if (status < 0)
Console.WriteLine("{0} is less than {1}",
value1, value2);
else
Console.WriteLine("{0} is equal to {1}",
value1, value2);
}
}
输出:
54 is less than 77
70 is less than 95
10 is less than 24
45 is equal to 45
UInt16.CompareTo(Object)方法
此方法用于将当前实例与指定对象进行比较,并返回一个整数,该整数指示当前实例的值是小于,等于还是大于对象的值。
句法:
public int CompareTo (object value);
在这里,它需要对象与该实例进行比较,或者为null。
返回值:返回一个32位带符号的数字,指示当前实例和value参数的相对值,如下所示:
- 小于零:如果当前实例<值
- 零:如果当前实例=值
- 大于零:如果当前实例>值
异常:如果value不是UInt16 ,则抛出ArgumentException 。
下面的程序说明了UInt16.CompareTo(Object)方法的用法
范例1:
// C# program to demonstrate the
// UInt16.CompareTo(object) Method
using System;
class GFG {
// Main Method
public static void Main()
{
try {
// Declaring and initializing value1
ushort value1 = 10;
// Declaring and initializing value2
object value2 = (ushort)56;
// using CompareTo() method
int status = value1.CompareTo(value2);
// checking the status
if (status > 0)
Console.WriteLine("{0} is greater than {1}",
value1, value2);
else if (status < 0)
Console.WriteLine("{0} is less than {1}",
value1, value2);
else
Console.WriteLine("{0} is equal to {1}",
value1, value2);
}
catch (ArgumentException e)
{
Console.WriteLine("value2 must be null"+
" or an instance of UInt16");
Console.Write("Exception Thrown: ");
Console.Write("{0}", e.GetType(), e.Message);
}
}
}
输出:
10 is less than 56
示例2:对于ArgumentException
// C# program to demonstrate the
// UInt16.CompareTo(Object) Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
try {
// Declaring and initializing value1
ushort value1 = 150;
// Declaring and initializing value2
object value2 = 1 / 4;
// using CompareTo() method
int status = value1.CompareTo(value2);
// checking the status
if (status > 0)
Console.WriteLine("{0} is greater than {1}",
value1, value2);
else if (status < 0)
Console.WriteLine("{0} is less than {1}",
value1, value2);
else
Console.WriteLine("{0} is equal to {1}",
value1, value2);
}
catch (ArgumentException e)
{
Console.WriteLine("value2 must be null"+
" or an instance of UInt16");
Console.Write("Exception Thrown: ");
Console.Write("{0}", e.GetType(), e.Message);
}
}
}
输出:
value2 must be null or an instance of UInt16
Exception Thrown: System.ArgumentException
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.uint16.compareto?view=netstandard-2.1