Decimal.ToByte(Decimal) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Converte il valore dell'oggetto Decimal specificato nell'intero senza segno a 8 bit equivalente.
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
Parametri
- value
- Decimal
Numero decimale da convertire.
Restituisce
Intero senza segno a 8 bit equivalente a value
.
Eccezioni
value
è minore di Byte.MinValue o maggiore di Byte.MaxValue.
Esempio
Nell'esempio seguente viene usato il ToByte metodo per convertire i numeri decimali in Byte valori.
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
Commenti
Il parametro value
viene arrotondato al valore intero più vicino verso zero e il risultato viene restituito.
È anche possibile convertire un valore in un Decimal intero senza segno a 8 bit usando l'operatore Explicit di assegnazione. Poiché l'operatore esegue una conversione ristretta, è necessario usare un operatore di cast in C# o una funzione di conversione in Visual Basic.