Decimal.ToByte(Decimal) 方法
定义
public:
static System::Byte ToByte(System::Decimal value);
public static byte ToByte (decimal value);
static member ToByte : decimal -> byte
Public Shared Function ToByte (value As Decimal) As Byte
参数
- value
- Decimal
要转换的十进制数。The decimal number to convert.
返回
等效于 value
的 8 位无符号整数。An 8-bit unsigned integer equivalent to value
.
异常
示例
下面的示例使用 ToByte 方法将十进制数字转换为 Byte 值。The following example uses the ToByte method to convert decimal numbers to Byte values.
using System;
class Example
{
public static void Main( )
{
decimal[] values = { 123m, new Decimal(78000, 0, 0, false, 3),
78.999m, 255.999m, 256m,
127.999m, 128m, -0.999m,
-1m, -128.999m, -129m };
foreach (var value in values) {
try {
byte number = Decimal.ToByte(value);
Console.WriteLine("{0} --> {1}", value, number);
}
catch (OverflowException e)
{
Console.WriteLine("{0}: {1}", e.GetType().Name, value);
}
}
}
}
// The example displays the following output:
// 78 --> 78
// 78.000 --> 78
// 78.999 --> 78
// 255.999 --> 255
// OverflowException: 256
// 127.999 --> 127
// 128 --> 128
// -0.999 --> 0
// OverflowException: -1
// OverflowException: -128.999
// OverflowException: -129
Module Example
Public Sub Main()
Dim values() As Decimal = { 78d, New Decimal(78000, 0, 0, false, 3),
78.999d, 255.999d, 256d,
127.999d, 128d, -0.999d,
-1d, -128.999d, -129d }
For Each value In values
Try
Dim number As Byte = Decimal.ToByte(value)
Console.WriteLine("{0} --> {1}", value, number)
Catch e As OverflowException
Console.WriteLine("{0}: {1}", e.GetType().Name, value)
End Try
Next
End Sub
End Module
' The example displays the following output:
' 78 --> 78
' 78.000 --> 78
' 78.999 --> 78
' 255.999 --> 255
' OverflowException: 256
' 127.999 --> 127
' 128 --> 128
' -0.999 --> 0
' OverflowException: -1
' OverflowException: -128.999
' OverflowException: -129
注解
参数 value
舍入为最接近零的整数值,并返回该结果。Parameter value
is rounded to the nearest integer value toward zero, and that result is returned.
还可以通过使用 Explicit 赋值运算符将 Decimal 值转换为8位无符号整数。You can also convert a Decimal value to an 8-bit unsigned integer by using the Explicit assignment operator. 由于运算符执行收缩转换,因此必须在 Visual Basic 中C#使用转换运算符或转换函数。Because the operator performs a narrowing conversion, you must use a casting operator in C# or a conversion function in Visual Basic.