Tipo di dati byte (Visual Basic)Byte data type (Visual Basic)

Include interi senza segno a 8 bit (1 byte) che variano in valore compreso tra 0 e 255.Holds unsigned 8-bit (1-byte) integers that range in value from 0 through 255.

CommentiRemarks

Utilizzare il Byte tipo di dati per contenere dati binari.Use the Byte data type to contain binary data.

Il valore predefinito di Byte è 0.The default value of Byte is 0.

Assegnazioni di valori letteraliLiteral assignments

È possibile dichiarare e inizializzare una variabile assegnandogli un valore letterale Byte decimale, un valore letterale esadecimale, un valore letterale ottale o (a partire da Visual Basic 2017) un valore letterale binario.You can declare and initialize a Byte variable by assigning it a decimal literal, a hexadecimal literal, an octal literal, or (starting with Visual Basic 2017) a binary literal. Se il valore letterale integrale non è compreso nell'intervallo di un oggetto, Byte ovvero se è minore di Byte.MinValue o maggiore di Byte.MaxValue , si verifica un errore di compilazione.If the integral literal is outside the range of a Byte (that is, if it is less than Byte.MinValue or greater than Byte.MaxValue), a compilation error occurs.

Nell'esempio seguente, i numeri interi uguali a 201 rappresentati come valori letterali decimali, esadecimali e binari vengono convertiti in modo implicito da Integer a byte valori.In the following example, integers equal to 201 that are represented as decimal, hexadecimal, and binary literals are implicitly converted from Integer to byte values.

Dim byteValue1 As Byte = 201
Console.WriteLine(byteValue1)

Dim byteValue2 As Byte = &H00C9
Console.WriteLine(byteValue2)

Dim byteValue3 As Byte = &B1100_1001
Console.WriteLine(byteValue3)
' The example displays the following output:
'          201
'          201
'          201

Nota

Usare il prefisso &h o &H per indicare un valore letterale esadecimale, il prefisso &b o &B per indicare un valore letterale binario e il prefisso &o o &O per indicare un valore letterale ottale.You use the prefix &h or &H to denote a hexadecimal literal, the prefix &b or &B to denote a binary literal, and the prefix &o or &O to denote an octal literal. I valori letterali decimali non hanno prefissi.Decimal literals have no prefix.

A partire da Visual Basic 2017, è anche possibile usare il carattere di sottolineatura, _ , come separatore di cifre per migliorare la leggibilità, come illustrato nell'esempio seguente.Starting with Visual Basic 2017, you can also use the underscore character, _, as a digit separator to enhance readability, as the following example shows.

Dim byteValue3 As Byte = &B1100_1001
Console.WriteLine(byteValue3)
' The example displays the following output:
'          201

A partire da Visual Basic 15,5, è anche possibile usare il carattere di sottolineatura ( _ ) come separatore iniziale tra il prefisso e le cifre esadecimali, binarie o ottali.Starting with Visual Basic 15.5, you can also use the underscore character (_) as a leading separator between the prefix and the hexadecimal, binary, or octal digits. Ad esempio:For example:

Dim number As Byte = &H_6A

Per usare il carattere di sottolineatura come separatore iniziale, è necessario aggiungere l'elemento seguente al file di progetto (*.vbproj) di Visual Basic:To use the underscore character as a leading separator, you must add the following element to your Visual Basic project (*.vbproj) file:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

Per ulteriori informazioni, vedere Impostazione della versione del linguaggio Visual Basic.For more information see setting the Visual Basic language version.

Suggerimenti per la programmazioneProgramming tips

  • Numeri negativi.Negative Numbers. Poiché Byte è un tipo senza segno, non può rappresentare un numero negativo.Because Byte is an unsigned type, it cannot represent a negative number. Se si usa l'operatore unario meno ( - ) su un'espressione che restituisce il tipo Byte , Visual Basic converte prima l'espressione in Short .If you use the unary minus (-) operator on an expression that evaluates to type Byte, Visual Basic converts the expression to Short first.

  • Conversioni di formato.Format Conversions. Quando Visual Basic legge o scrive file oppure quando chiama dll, metodi e proprietà, può eseguire automaticamente la conversione tra i formati di dati.When Visual Basic reads or writes files, or when it calls DLLs, methods, and properties, it can automatically convert between data formats. I dati binari archiviati in Byte variabili e matrici vengono conservati durante tali conversioni di formato.Binary data stored in Byte variables and arrays is preserved during such format conversions. Non usare una String variabile per i dati binari, perché il relativo contenuto può essere danneggiato durante la conversione tra i formati ANSI e Unicode.You should not use a String variable for binary data, because its contents can be corrupted during conversion between ANSI and Unicode formats.

  • Conversioni.Widening. Il Byte tipo di dati viene ampliato in Short , UShort , Integer , UInteger , Long , ULong , Decimal , Single o Double .The Byte data type widens to Short, UShort, Integer, UInteger, Long, ULong, Decimal, Single, or Double. Ciò significa che è possibile Byte eseguire la conversione in uno di questi tipi senza riscontrare un System.OverflowException errore.This means you can convert Byte to any of these types without encountering a System.OverflowException error.

  • Digitare i caratteri.Type Characters. Byte non ha un carattere di tipo letterale o un carattere di tipo identificatore.Byte has no literal type character or identifier type character.

  • Tipo di framework.Framework Type. Il tipo corrispondente in .NET Framework è la struttura System.Byte.The corresponding type in the .NET Framework is the System.Byte structure.

EsempioExample

Nell'esempio seguente b è una Byte variabile.In the following example, b is a Byte variable. Le istruzioni illustrano l'intervallo della variabile e l'applicazione degli operatori di spostamento di bit.The statements demonstrate the range of the variable and the application of bit-shift operators to it.

' The valid range of a Byte variable is 0 through 255.
Dim b As Byte
b = 30
' The following statement causes an error because the value is too large.
'b = 256
' The following statement causes an error because the value is negative.
'b = -5
' The following statement sets b to 6.
b = CByte(5.7)

' The following statements apply bit-shift operators to b.
' The initial value of b is 6.
Console.WriteLine(b)
' Bit shift to the right divides the number in half. In this 
' example, binary 110 becomes 11.
b >>= 1
' The following statement displays 3.
Console.WriteLine(b)
' Now shift back to the original position, and then one more bit
' to the left. Each shift to the left doubles the value. In this
' example, binary 11 becomes 1100.
b <<= 2
' The following statement displays 12.
Console.WriteLine(b)

Vedi ancheSee also