Este código tiene un gran problema...Solo acepta Integer, por lo que si vas a ingresar 'A' tienes que hacerlo introduciendo su valor '10', es muy incómo y defectuoso. Toma valores de uno en uno...
package proyectoconversiones;
/* EZEQUIEL 281176*/
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class HexadecimalDecimal {
public static void main (String []args){
BufferedReader entrada = new BufferedReader (new InputStreamReader (System.in));
//Declaramos el vector
int w = 0;
int numero =0, c =0;
double deci = 0;
int []vect = new int [12];
//Llenamos el vector
System.out.println("Llene el Vector");
for (int i =0; i<vect.length;i++){
System.out.println("Pulse el digito Hexadecimal " + i + " "); //+ 1 + Concatenar una variable
try{
numero= Integer.parseInt(entrada.readLine());
}catch (Exception ex){
System.out.println("Se produjo un ERROR");
i--;
}
if (numero>=0&&numero<16){
vect[c] = numero;
c++;
}
else {
System.out.println("ERROR: Digite solo entre 0 y 15, ...");
i--;
}
if (numero==22){
break;
}
}
//imprimimos numero Hexadecimal
System.out.println("Usted digitó el Número Hexadecimal: ");
System.out.print(" n ");
for (int i =0; i<c;i++){
System.out.print(vect + ", ");
}
for (int i =c-1; i>=0;i--){
deci = deci + vect *(Math.pow(16, w));
w++;
}
System.out.print("nn ");
System.out.print("Y su correspondiente numero decimal es: "+deci+ ", ");
System.exit(0);
}
}