어제 오늘 내일

[Java Math] signum() 메소드 – 숫자의 부호 확인하기 본문

IT/Java

[Java Math] signum() 메소드 – 숫자의 부호 확인하기

hi.anna 2025. 12. 8. 01:19

Math.signum()은 주어진 숫자의 부호(Sign) 를 확인하는 메소드입니다. 결과는 -1.0, 0.0, 1.0 중 하나가 반환됩니다.

 

1. 기본 사용법

public class MathSignumBasic {
    public static void main(String[] args) {
        System.out.println(Math.signum(10));    // 1.0
        System.out.println(Math.signum(-10));   // -1.0
        System.out.println(Math.signum(0));     // 0.0
    }
}

양수 → 1.0
음수 → -1.0
0 → 0.0

 

2. 지원 타입

public class MathSignumTypes {
    public static void main(String[] args) {
        float f = Math.signum(-3.14f);
        double d = Math.signum(2.718);

        System.out.println(f); // -1.0
        System.out.println(d); // 1.0
    }
}

signum()float, double 타입을 지원합니다. 결과도 항상 실수(float 또는 double)로 반환됩니다.

 

3. 활용 예제: 이동 방향 판별

public class MathSignumDirection {
    public static void main(String[] args) {
        int target = -15;

        if (Math.signum(target) == -1.0) {
            System.out.println("왼쪽으로 이동");
        } else if (Math.signum(target) == 1.0) {
            System.out.println("오른쪽으로 이동");
        } else {
            System.out.println("정지");
        }
    }
}

부호를 기준으로 방향을 판별할 수 있습니다.

 

4. 활용 예제: 정규화(normalization)

public class MathSignumNormalize {
    public static void main(String[] args) {
        double x = -123.45;
        double normalized = Math.signum(x); // -1.0

        System.out.println("정규화된 부호 = " + normalized);
    }
}

수치가 크든 작든 상관없이 부호만 필요할 때 signum()을 활용합니다.

 

결론

  • Math.signum()은 숫자의 부호를 실수 값으로 반환 (-1.0, 0.0, 1.0)
  • float/double 타입 지원
  • 방향 판별, 정규화, 제어 로직 분기에 유용

 

 

반응형
Comments