Math 클래스

0

자바

목록 보기
13/17

Math Class

java.lang.Math 클래스

  • Math 클래스는 수학에서 자주 사용하는 상수들과 함수들을 미리 구현해 놓은 클래스
  • Math 클래스의 모든 메소드는 클래스 메소드 (static method)이므로, 객체를 생성하지 않고도 바로 사용 할 수 있다
  • 이러한 Math 클래스는 java.lang 패키지에 포함되어 있다

Math.E와 Math.PI

  • Math 클래스에 정의되어 있는 클래스 필드는 다음과 같다
    • Math.E
      • 오일러의 수라 불리며, 자연로그의 밑 값으로 2.718을 의미
    • Math.PI
      - 원의 원주를 지름으로 나눈 비율(원주율) 값으로 3.141592를 의미

random()

  • 0.0이상 1.0미만의 범위에서 임의의 double형 값을 하나 생성하여 반환
  • 내부적으로 java.util 패키지의 Random 클래스를 사용한 의사 난수 발생기를 사용하여 임의의 수를 생성
System.out.println((int)(Math.random() * 100)); // 0 ~ 99
Random ran = new Random();
System.out.println(ran.nextInt(100));           // 0 ~ 99
  • 자바에서는 Math 클래스의 random()메소드뿐만 아니라 java.util 패키지에 포함된 Random 클래스의 nextInt()메소드를 사용해도 난수를 생성할 수 있다
  • 만약 특정 범위에 속하는 난수를 생성하려면, 다음과 같이 난수 생성 범위를 조절할 수 있다
(int)(Math.random() * 6);       // 0 ~ 5
((int)(Math.random() * 6) + 1); // 1 ~ 6
((int)(Math.random() * 6) + 3); // 3 ~ 8

abs()

  • abs() 메소드는 전달된 값이 음수이면 그 값의 절댓값을 반환하며, 전달된 값이 양수이면 전달된 값을 그대로 반환
System.out.println(Math.abs(10));    // 10
System.out.println(Math.abs(-10));   // 10
System.out.println(Math.abs(-3.14)); // 3.14

floor(), ceil(), round()

  • floor() 메소드는 인수로 전달받은 값과 같거나 작은 수 중에서 가장 큰 정수를 반환, 내림
  • ceil() 메소드는 반대로 인수로 전달받은 값과 같거나 큰 수 중에서 가장 작은 정수를 반환,올림
  • round() 메소드는 전달받은 실수를 소수점 첫째 자리에서 반올림한 정수를 반환, 반올림
System.out.println(Math.ceil(10.0));      // 10.0
System.out.println(Math.ceil(10.1));      // 11.0
System.out.println(Math.ceil(10.000001)); // 11.0
System.out.println(Math.floor(10.0));     // 10.0
System.out.println(Math.floor(10.9));     // 10.0
System.out.println(Math.round(10.0));     // 10
System.out.println(Math.round(10.4));     // 10
System.out.println(Math.round(10.5));     // 11

max(), min()

  • max() 메소드는 전달된 두 값을 비교하여 그 중에서 큰 값을 반환하며, min() 메소드는 그 중에서 작은 값을 반환
System.out.println(Math.max(3.14, 3.14159)); // 3.14159
System.out.println(Math.min(3.14, 3.14159)); // 3.14
System.out.println(Math.max(-10, -11));      // -10
System.out.println(Math.min(-10, -11));      // -11

pow(), sqrt()

  • pow()메소드는 전달된 두 개의 double형 값을 가지고 제곱 연산을 수행
  • 예를 들어, pow(a, b)는 a의 b 승, 즉 ab를 반환
  • 반대로 sqrt() 메소드는 전달된 double형 값의 제곱근 값을 반환
System.out.println((int)Math.pow(5, 2)); // 25
System.out.println((int)Math.sqrt(25));  // 5

대표적인 Math 메소드

출처
http://www.tcpschool.com/java/java_api_math

profile
목적지가 있는 개발자 백재원입니다.

0개의 댓글