java.lang.Integer의 toBinaryString(), toOctalString(), toHexaString() 메서드를 이용하여 10진수를 2진수, 8진수, 16진수 문자열로 변환할 수 있다.
int number = 10;
String binary = Integer.toBinaryString(number); // 10진수 -> 2진수
String octal = Integer.toOctalString(number); // 10진수 -> 8진수
String hexaDecimal = Integer.toHexString(number); // 10진수 -> 16진수
System.out.println(number); // 10
System.out.println(binary); // 1010
System.out.println(octal); // 12
System.out.println(hexaDecimal); // a
Integer.toString(int num, int radix) 메서드를 이용하는 방법도 있다.
int number = 10;
String bianry = Integer.toString(number, 2);
String octal = Integer.toString(number, 8);
String hexaDecimal = Integer.toString(number, 16);
System.out.println(number); // 10
System.out.println(binary); // 1010
System.out.println(octal); // 12
System.out.println(hexaDecimal); // a
java.lang.Integer 클래스의 parseInt() 메서드를 이용하여 2진수, 8진수, 16진수 문자열을 10진수 integer로 변경할 수 있다.
int binaryToDecimal = Integer.parseInt("1010", 2);
int octalToDecimal = Integer.parseInt("12", 8);
int hexaToDecimal = Integer.parseInt("A", 16);
System.out.println(binaryToDecimal); // 10
System.out.println(octalToDecimal); // 10
System.out.println(hexaToDecimal); // 10
int number = Integer.parseInt("123");
parseInt(String s)
의 형식으로 사용하면 되고, 10진수 문자열이 아닌 2진수, 8진수, 16진수 등일 경우에는 parseInt(String s, int radix)
의 형식으로 두번째 파라미터를 지정해서 사용해주면 된다.(따라서, 두번째 파라미터를 10으로 입력하면 parseInt(String s)와 같다.