Java를 배워보자/4. 자바 API

자바 Math 클래스

_Blue_Sky_ 2024. 9. 26. 23:59
728x90
728x90

자바 Math 클래스: 수학 연산의 든든한 동반자

소개

자바 프로그래밍에서 수학적인 연산이 필요할 때 가장 먼저 떠오르는 클래스는 바로 Math 클래스입니다. java.lang 패키지에 속해 있으며, 다양한 수학 함수를 제공하여 개발자의 코딩을 편리하게 해줍니다. Math 클래스는 static 메소드로 구성되어 있어 객체 생성 없이 바로 사용할 수 있습니다.

주요 메소드

  • 절댓값:
    • abs(x): x의 절댓값을 반환합니다.
  • 최대값/최소값:
    • max(a, b): ab 중 큰 값을 반환합니다.
    • min(a, b): ab 중 작은 값을 반환합니다.
  • 반올림:
    • round(x): x를 가장 가까운 정수로 반올림하여 long형으로 반환합니다.
    • ceil(x): x보다 크거나 같은 최소의 정수를 반환합니다. (올림)
    • floor(x): x보다 작거나 같은 최대의 정수를 반환합니다. (내림)
  • 삼각함수:
    • sin(x), cos(x), tan(x): 각각 사인, 코사인, 탄젠트 값을 반환합니다. (단위: 라디안)
  • 지수/로그:
    • exp(x): e의 x승을 반환합니다.
    • log(x): x의 자연로그를 반환합니다.
    • pow(a, b): a의 b승을 반환합니다.
  • sqrt:
    • sqrt(x): x의 제곱근을 반환합니다.
  • 랜덤:
    • random(): 0.0 이상 1.0 미만의 난수를 생성합니다.

활용 예시

public class MathExample {
    public static void main(String[] args) {
        // 절댓값
        double x = -3.14;
        double absX = Math.abs(x);
        System.out.println("absX = " + absX);

        // 최대값, 최소값
        int a = 10, b = 20;
        int max = Math.max(a, b);
        int min = Math.min(a, b);
        System.out.println("max = " + max + ", min = " + min);

        // 반올림
        double y = 3.7;
        long rounded = Math.round(y);
        System.out.println("rounded = " + rounded);

        // 랜덤
        double randomNum = Math.random();
        System.out.println("randomNum = " + randomNum);

        // 1부터 10까지의 난수 생성
        int randomInt = (int)(Math.random() * 10) + 1;
        System.out.println("randomInt = " + randomInt);
    }
}
 
 

왜 Math 클래스를 사용해야 할까요?

  • 편리성: 복잡한 수학 함수를 직접 구현하지 않아도 됩니다.
  • 효율성: 이미 최적화된 코드로 구현되어 있어 빠른 실행 속도를 보장합니다.
  • 정확도: 표준 수학 라이브러리를 사용하여 정확한 결과를 얻을 수 있습니다.

추가적으로 알아두면 좋은 점

  • Math 클래스의 모든 메소드는 static 메소드이므로 객체 생성 없이 클래스 이름으로 바로 호출할 수 있습니다.
  • 삼각함수의 입력값은 라디안 단위입니다.
  • random() 메소드를 이용하여 다양한 범위의 난수를 생성할 수 있습니다.

결론

Math 클래스는 자바 프로그래밍에서 수학적인 연산을 수행하는 데 필수적인 클래스입니다. 다양한 메소드를 제공하여 개발자의 생산성을 높여주고, 정확하고 효율적인 코드 작성을 가능하게 합니다.

 

728x90
728x90

'Java를 배워보자 > 4. 자바 API' 카테고리의 다른 글

자바 Collection 프레임워크 (List, Set, Map)  (0) 2024.09.27
자바 Date 클래스  (0) 2024.09.27
자바 Wrapper 클래스  (0) 2024.09.26
자바 String 클래스  (0) 2024.09.26
자바 API 소개  (0) 2024.09.26