title: Binary to decimal in java using only recursion (no loops)
body: <p>I can not seem to get my method to convert the binary number to a decimal correctly. I believe i am really close and in fact i want to use a string to hold the binary number to hold it and then re-write my method to just use a .length to get the size but i do not know how to actually do that. Could someone help me figure out how i'd rewrite the code using a string to hold the binary value and then obtain the decimal value using only recursion and no loops?</p>
  
  <p>This is my full code right now and i won't get get rid of asking for the size of the binary and use a string to figure it out myself. Please help :)</p>
  
  <pre><code>package hw_1;
  import java.util.Scanner;
  
  
  public class Hw_1 {
  
      public static void main(String[] args) {
  
          int input;
          int size;
          Scanner scan = new Scanner(System.in);
  
          System.out.print("Enter decimal integer: ");
          input = scan.nextInt();
          convert(input);
          System.out.println();
          System.out.print("Enter binary integer and size : ");
          input = scan.nextInt();
          size = scan.nextInt();
          System.out.println(binaryToDecimal(input, size));
  
      }
  
      public static void convert(int num) {
          if (num &gt; 0) {
              convert(num / 2);
              System.out.print(num % 2 + " ");
          }
      }
  
      public static int binaryToDecimal(int binary, int size) {
          if (binary == 0) {
              return 0;
          }
          return binary % 10
                  * (int) Math.pow(2, size) + binaryToDecimal((int) binary / 10, size - 1);
  
      }
  }
  </code></pre>