본문 바로가기

공부 자료/자바[JAVA]

[JAVA] 2진수, 8진수, 16진수 < - > 10진수

1. 2진수, 8진수, 16진수를 10진수로 변경 (String의 진수값을 int 형의 10진수로 출력)

int num = Integer.parseInt("String의 진수값", 해당 진수);

String str1 = "1010"; // 2진수
String str2 = "21"; // 8진수
String str3 = "1A"; // 16진수

// 위 각 진수들을 10진수로 바꾸기
int num1 = Integer.parseInt(str1, 2); // 2진수 >> 10진수, 10
int nu2 = Integer.parseInt(str2, 8); // 8진수 >> 10진수, 17
int num3 = Integer.parseInt(str3, 16); // 16진수 >> 10 진수, 26

 

2. 10진수를 각 2진수, 8진수, 16진수로 변경 (int 형의 10진수를 String 형의 진수값으로 출력)

String num2 = Integer.toBinary(int i);

String num8 = Integer.toOctalString(int i);

String num16 = Integer.toHexString(int i);

int i = 10;

// 위 10진수를 각 진수로 바꾸기
String binary = Integer.toBinaryString(i); // 10진수 >> 2진수, 1010
String octal = Integer.toOctalString(i); // 10진수 >> 8진수, 12
String hex = Integer.toHexString(i); // 10진수 >> 16진수, A