Integer.parseInt(string s, int radix) -> s를 radix진수로 변환한 후 int로 리턴
String a = "45";
int num = Integer.parseInt(a,10);
System.out.print(num); // 45 출력
45 정상적으로 출력이 된다. 그런데 ?
String a = "45";
int num = Integer.parseInt(a,2);
System.out.print(num); // error !
출력이 되지 않는다.

이와 같은 오류가 나온다.
.
.
.
해결
parseInt를 찾아봤다.

읭? 99를 8진수로 못바꾼다..?
143으로 표현할 수 있지 않은가 ?
parseInt("99",8)을 구글링 했다.

Alex shin 이라는 친구가 5년전 똑같은 고민을 했다..
이에 대한 답변

그렇다. parseInt(String, int)는 string을 int 진수로 바꿔주는게 아니라, String이 int 진수일 때, 10진수로 어떻게 읽느냐에 대한 메소드였다.
99는 8진수로 표현할 수 있는 값이 아니기 때문에 NumberFormatException이 발생하는 것이었다.
따라서 위에 (45,3) 가 아닌 (1200, 3) 을 넣어야한다. 45가 정상적으로 출력된다.
*** 참고 : https://coderanch.com/t/668292/java/parseInt-throws-NumberFormatException