JAVA 나누기 했을 때 소수점 이하 나오게 하기

    반응형

    💗 두 값 중 하나를 double로 변환 해주어 계산하면 된다.

    1. int / int를 int로 받기

    2. int / int를 double로 받기

    ✅ 3. int / double을 double로 받기

    4. int / double을 int로 캐스팅해서 받기


    서로 다른 타입끼리 연산하게 되면 크기가 더 큰 쪽으로 자동 형변환 된다.

    * long -> float인 이유는 float의 수 표현이 더 정밀하기 때문이다.

    byte(1) -> short(2)/char(2) -> int(4) -> long(8) -> float(4) -> double(8)
            long a = 10L;
            float b = 3.2f;
            
            float c = a * b;
            long d = a * b; // 오류난다. float으로 자동 형변환 되었기 때문이다.
            long e = (long)(a * b); // long으로 형변환 해주어야한다.
    반응형

    댓글