Conersao byte, inteiro, String...[resolvido]

Onde encontro material sobre conversao de byte para inteiro de inteiro para byte…
Eu nao quero código, quero a explicação de como funciona, pois códigos eu já tenho e já encontrei um monte, mas olhando o código não entendi como é a lógica para converter em todas as vias…

byte para inteiro. Não existe conversão. Como o int é maior do que o byte, um valor só é copiado para outro:

byte y = 10; int x = y;

De byte para int. Você é obrigado a fazer cast. Como um inteiro não cabe num byte, apenas os bits menos significativos são considerados:

int x = 341; //Em binário, tem nove bits: 101010101 byte y = (int) x; //Apenas os oito últimos bits "cabem": 01010101 = 85

[quote=ViniGodoy]byte para inteiro. Não existe conversão. Como o int é maior do que o byte, um valor só é copiado para outro:

byte y = 10; int x = y;

De byte para int. Você é obrigado a fazer cast. Como um inteiro não cabe num byte, apenas os bits menos significativos são considerados:

int x = 341; //Em binário, tem nove bits: 101010101 byte y = (int) x; //Apenas os oito últimos bits "cabem": 01010101 = 85 [/quote]

blz… entendi…

agora tipo como é que funciona a conversão de hexadecimal para byte!

Hexadecimal é uma base numérica. Não existe conversão. Todo número pode ser representado em diferentes bases.

Agora, se vc quiser que o java gere a representação hexa de um número, e então transforme essa representação numa String, aí vc usa a função:

Integer.toHexString();

Agora, qualquer byte tem um valor hexa. Por exemplo, o valor 125 em binário é 1111101, e em hexa é 7D. Você pode ver os valores usando a calculadora científica do Windows.

Para descobrir como converter um valor em outro, divida o valor decimal na base desejada. Por exemplo, para a base hexa (16) vc faria:

125 / 16 = 7 resta 13. Em hexa A=10, B=11, C=12, D=13.
Por isso, 7D.

[quote=ViniGodoy]Hexadecimal é uma base numérica. Não existe conversão. Todo número pode ser representado em diferentes bases.

Agora, se vc quiser que o java gere a representação hexa de um número, e então transforme essa representação numa String, aí vc usa a função:

Integer.toHexString();

Agora, qualquer byte tem um valor hexa. Por exemplo, o valor 125 em binário é 1111101, e em hexa é 7D. Você pode ver os valores usando a calculadora científica do Windows.

Para descobrir como converter um valor em outro, divida o valor decimal na base desejada. Por exemplo, para a base hexa (16) vc faria:

125 / 16 = 7 resta 13. Em hexa A=10, B=11, C=12, D=13.
Por isso, 7D.
[/quote]

blz… valeu pelas dicas…