[Java] 간단한 진법 변환 방법 정리

hansung's·2024년 2월 21일
0

👀 N진수 -> 10진수로 변경하는 방법

N진수: 16진수를 가정하면 10 -> A , 11 -> B 등
A와 B와 같은 알파뱃 혹은 숫자를 의미.

진수: 2진수부터 ~ 36진수 등 진수를 적으면 된다.
Integer.parseInt(N진수 , 진수)

 System.out.println(Integer.parseInt(n, b));
 
 -> n은 ZZZZZ이라고 가정하고 b는 36이라고 하면
 값은 60466175이 나올 수 있다.

👀 10진수 -> N진수로 변경하는 방법

10진수: 말그대로 10진수 숫자이다.
N: 몇의 진수로 구할 것인지를 의미

Integer.toString(10진수, N);을 해주면 된다.

System.out.println(Integer.toString(60466175, 36));

-> 값이 ZZZZZ 나오는걸 볼 수 있다.

Integer.toString vs parseInt 비교

1) Integer.toString


Integer.toString은 숫자를 문자로 변환하는 형 변환 방법이다.
사용법은
int num = 123456;
String str = Integer.toString(num);
이렇게 되면 숫자를 문자로 변경해서 넣을 수 있다.

1-1) String.valueOf()


또 다른 방법으로 숫자를 문자로 변환하는 방법에는 String.valueOf()가 존재

하지만! 두 개의 차이점은 존재한다.
만약 입력된 문자열이 Null이라면 String.valueOf는 "null"이라는 문자열로 처리
하지만, toString()은 "Null PointerException"이라는 오류를 발생,
만약 null도 문자열로 처리해야 한다면 toString()보단 String.valueOf()를 사용

2) Integer.parseInt()


Integer.parseInt()의 형태는 총 두 가지로 해당 두 가지를 알아보자

Integer.parseInt(String s)
  • 숫자형의 문자열을 인자 값으로 받으면 해당 값을 10진수의 Integer형으로 반환 해줍니다.
Integer.parseInt(String s, int radix)
  • 숫자형의 문자열을 첫번째 인자 값으로 받고 변환할 진수값을 입력하면 해당 진수에 맞춰 Integer형으로 반환하여 준다.

이렇게 N진수를 10진수로 10진수를 N진수로 바꾸는 방법을 알아보았습니다.

profile
ABAPER를 꿈꾸는 개발자

0개의 댓글