JAVA 진수변환

정대기·2022년 6월 22일
0

JAVA PROGRAMING

목록 보기
7/15

10진수 -> n진수

변환하기 전에 확인할것
10진수를 제외한 나머지 진수는 String으로 받아야 한다. -> int는 전부 10진수로 인식
2진수, 8진수, 16진수는 아래와 같이 Binary, Octal, Hex함수가 존재한다.
물론 toString(int n, int radix)로 사용해도 무관하다.

public class binary {
	public static void main(String[] args) {
        // 테스트를 위한 10진수 값 = 25
        int a = 25;

        System.out.println("10진수 -> 2진수");
        System.out.println(Integer.toBinaryString(a));
        System.out.println(Integer.toString(a,2));

        System.out.println("10진수 -> 3진수");
        System.out.println(Integer.toString(a,3));

        System.out.println("10진수 -> 4진수");
        System.out.println(Integer.toString(a,4));

        System.out.println("10진수 -> 5진수");
        System.out.println(Integer.toString(a,5));

        System.out.println("10진수 -> 6진수");
        System.out.println(Integer.toString(a,6));

        System.out.println("10진수 -> 7진수");
        System.out.println(Integer.toString(a,7));

        System.out.println("10진수 -> 8진수");
        System.out.println(Integer.toOctalString(a));
        System.out.println(Integer.toString(a,8));

        System.out.println("10진수 -> 16진수");
        System.out.println(Integer.toString(a,16));
        System.out.println(Integer.toHexString(a));
    }
}

toString(int n, int radix)
10진수값을 n에 바꾸고싶은 진수값을 radix 에 넣으면 간단하다.

n진수 -> 10진수

변환하기 전에 확인할것

String타입으로 받은 n진수 값을 Integer.parseInt(string s, int radix) 함수에서 's'변수에 넣고 넣은 값이 몇 진수 값 인지 'radix'에 넣어 알려주어야 한다.

public class binary {
	public static void main(String[] args) {
        // 테스트를 위한 n진수 값 = 25
        String a = "110011";

        System.out.println("2진수 -> 10진수");
        System.out.println(Integer.parseInt(a,3));

        System.out.println("3진수 -> 10진수");
        System.out.println(Integer.parseInt(a,3));

        System.out.println("4진수 -> 10진수");
        System.out.println(Integer.parseInt(a,4));

        System.out.println("5진수 -> 10진수");
        System.out.println(Integer.parseInt(a,5));

        System.out.println("6진수 -> 10진수");
        System.out.println(Integer.parseInt(a,6));

        System.out.println("7진수 -> 10진수");
        System.out.println(Integer.parseInt(a,7));

        System.out.println("8진수 -> 10진수");
        System.out.println(Integer.parseInt(a,8));

        System.out.println("16진수 -> 10진수");;
        System.out.println(Integer.parseInt(a,16));
    }

}

0개의 댓글