Decimal.ToByte(Decimal) 메서드

정의

지정된 Decimal의 값을 해당하는 8비트 부호 없는 정수로 변환합니다.

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

변환할 10진수입니다.

반환

value에 해당하는 8비트 부호 없는 정수입니다.

예외

value가 Byte.MinValue보다 작거나 Byte.MaxValue보다 큽습니다.

예제

다음 예제에서는 메서드를 ToByte 사용하여 10진수를 값으로 Byte 변환합니다.

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
open System

let values = 
    [ 123m; Decimal(78000, 0, 0, false, 3uy)
      78.999m; 255.999m; 256m
      127.999m; 128m; -0.999m
      -1m; -128.999m; -129m ]

for value in values do
    try
        let number = Decimal.ToByte value
        printfn $"{value} --> {number}"
    with :? OverflowException as e ->
        printfn $"{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 는 0으로 가장 가까운 정수 값으로 반올림되고 해당 결과가 반환됩니다.

할당 연산자를 Decimal 사용하여 값을 8비트 부호 없는 정수로 변환할 Explicit 수도 있습니다. 연산자는 축소 변환을 수행하므로 C#의 캐스팅 연산자 또는 Visual Basic의 변환 함수를 사용해야 합니다.

적용 대상

추가 정보