Wrapper

e ai glera ,de boa…alguem sabe me explicar pq esse codigo causa um NumberFormatException

Byte objetoByte=Byte.valueOf((byte)1);      //nao causa excecao..ok
	Byte objetoByteString=Byte.valueOf("127");  //se eu por 128 causa exceçao,pois isso nao cabe no Byte..  ok
	Byte objetoByteStringRad=Byte.valueOf("2",2);  //causa exceçao ...nao entendi o pq..pois a conversao do int 2 em binario resulta em 10 que cabe perfeitamente em um Byte.. O mesmo ocorre com esse aqui em baixo:

Byte b=Byte.valueOf("58", 8);  //causa excecao tambem..mas se por 57 nao causa excecao..o resultado dele em octal seria 72 o que ainda cabe  em um Byte....

Alguem sabe a explicaçao pra isso ai…

o problema é que vc esta usando algarismos que nao valem nas bases correspondentes!

quando temos a base 10, isso significa que vc só pode usar algarismos de 0 a 9, certo?

na base 2, voce só pode usar 0 e 1.
na base 8, voce só pode usar de 0 a 7.

entao nos exemplos que voce passou, vc esta usando “2” para base binaria (deveria usar “11”) e “58” na base octal (deveria usar “60”)

a ta…ok…entendi…eu pensei que esse metodo valueOf…convertia de decimal para octal,ou binario…brigadao ai sergio