Ola pessoal, observem o código seguinte que mostra como fazer conversões de base, ele é importante pois lhe dá base para qualquer conversão, basta trocar o tipo wrapper e o tipo primitivo (byte, short, int ou long).
O programa WrapBaseJ14 .java usa a idéia do Java 1.4 e podemos melhorá-lo usando a idéia de autoboxing do Java 5 ou usando a classe Scanner que também faz isso de forma automática.
public class WrapBaseJ14 {
public static void main(String[] args) {
// Conversão de decimal para hexadecimal e vice-versa.
long la1 = Long.parseLong("BEBACAFE",16);
String sa1 = Long.toString(3199912702L,16);
String sa2 = Long.toHexString(3199912702L).toUpperCase();
System.out.println(la1+"\n"+sa1+"\n"+sa2);
System.out.println(); // Pula uma linha.
// Conversão de decimal para binário e vice-versa.
long lb2 = Long.parseLong("10111110101110101100101011111110",2);
String sb2 = Long.toString(3199912702L,2);
String sb3 = Long.toBinaryString(3199912702L);
System.out.println(lb2+"\n"+sb2+"\n"+sb3);
System.out.println(); // Pula uma linha.
// Conversão de decimal para octal e vice-versa.
long lb3 = Long.parseLong("[telefone removido]",8);
String sb4 = Long.toString(27656545376L,8);
String sb5 = Long.toOctalString(3199912702L);
System.out.println(lb3+"\n"+sb4+"\n"+sb5);
}
}// Fim do programa.
Esse programa gera a saída:
[telefone removido]
10111110101110101100101011111110
10111110101110101100101011111110
[telefone removido]
316035262140
[telefone removido]
[code]