タイトルにあるように、Java で再帰的な手法を使用して 2 進数を 10 進数に変換しようとしていましたが、希望の出力が得られません。
public class deci {
public static void main(String args[]){
hexa s1=new deci();
s1.spawn(11000);
}
void spawn(int a){
int p=0;int x=0;int k=0;
if(a>0){
p=a%10;
x=x+p*(int)Math.pow(2,k);
k++;
spawn(a/10);
} else {
System.out.print(x);
}
}
}