Classe Conversora de Bases

1 resposta
P

Boas people,

preciso de fazer uma classe que me faça convesão de bases:

  • Binario - decimal
  • Hexadecimal - decimal
  • Octal - decimal

Tenho uma matriz por exmeplo 3x3
1 2 3
4 5 6
7 8 9

mas também posso ter

0000 0000 0000
1111 1111 1111
1111 1111 1111

como posso ter

1,1 2,2 3,1
0,4 45,1 455
12 1 2

ou em binario

0000,0000 1111,1101 etc…

Os núemros podem ser doubles e negativos ou seja - 1,2 ou -1,2 e não apenas positivos.
qual a melhor maneira para fazer esta classe?
Alguem me pode ajudar.
Agradecia

1 Resposta

davidbuzatto
// para inteiros vc pode fazer:

// vc pode usar os métodos toBinaryString toHexString e toOctalString
// mas o toString onde vc passa a base desejada é mais genérico
// o toString recege o valor a ser convertido e a base 
// (2 = binário, 8 = octal, 16 = hexadecimal)
System.out.println( "10 em binário -> " + Integer.toString( 10, 2 ) );
System.out.println( "10 em octal -> " + Integer.toString( 10, 8 ) );
System.out.println( "10 em hexadecimal -> " + Integer.toString( 10, 16 ) );

// o parseInt irá converter por padrão para decimal, vc passa a String 
// que representa o número e a base que este está representado
System.out.println( "1001 (binário) em decimal -> " + Integer.parseInt( "1001", 2 ) );
System.out.println( "11 (octal) em decimal -> " + Integer.parseInt( "11", 8 ) );
System.out.println( "ff (hexa) em decimal -> " + Integer.parseInt( "ff", 16 ) );

// para mais métodos de conversão de outros tipos consulte a documentação da API

Até mais!

Criado 22 de janeiro de 2008
Ultima resposta 22 de jan. de 2008
Respostas 1
Participantes 2