Math 클래스
java.lang.Math 클래스는 수학계산에 사용할 수 있는 메소드를 제공
Math 클래스가 제공하는 메소드는 모두 정적 (Static) 이므로 Math 클래스로 바로 사용이 가능
메소드 | 설명 | 예제 코드 | 리턴값 |
int abs(int a) double abs(dobule a) |
절대값 | int v1 = Math.abs(-5); double v2 =Math.abs(-3.14); |
v1 = 5 v2 = 3.14 |
double ceil(double a) | 올림값 | double v3 = Math.ceil(5.3); double v4 = Math.ceil(-5.3); |
v3 = 6.0 v4 = -5.0 |
double floor(double a) | 버림값 | double v5 = Math.floor(5.3); double v6 = Math.floor(-5.3); |
v5 = 5.0 v6 = -6.0 |
int max(int a, int b) double max(double a, double b) |
최대값 | int v7 = Math.max(5, 9); double v8 = Math.max(5.3, 2.5) |
v7 = 9 v8 = 5.3 |
int min(int a, int b) double min(double a, double b) |
최소값 | int v9 = Math.min(5, 9 ); double v10 = Math.min(5,3, 2.5); |
v9 = 5 v10 = 2.5 |
double random() | 랜덤값 | double v11 = Math.random(); | 0.0<=v11<1.0 |
double rint(doubla a) | 가까운 정수의 실수값 | double v12 = Math.rint(5.3); double v13 = Math.rint(5.7) |
v12 = 5.0 v13 = 6.0 |
long round(double a) | 반올림값 | long v14 = Math.round(5,3); long v15 = Math.round(5.7) |
v14 = 5 v15 = 6 |
*(int)(Math.random()*n) +start => start <= ... < (start +n) 범위의 수 를 얻기 위한 랜덤 연산식
Random 클래스
java.util.Random 클래스는 난수를 얻어내기 위해 다양한 메소드 제공
Math.random() 메소드는 0.0에서 1사의 double 난수를 얻는 데만 사용
Random 클래스는 boolean, int, long, float, double 난수를 얻을 수 있다.
또 다른 차이점은 Random 클래스는 종자값 (seed)을 설정 할수 있다.
종자 값은 난수를 만드는 알고리즘에 사용되는 값으로 종자 값이 같으면 같은 난수를 얻는다.
생성자 | 설명 |
Random() | 호출 시 마다 다른 종자값(현재시간 이용)이 자동 설정된다 |
Random(long seed) | 매개값으로 주어진 종자값이 설정 된다 . |
리턴값 | 메소드(매개변수) | 설명 |
boolean | nextBoolean() | boolean 타입의 난수를 리턴 |
double | nextDouble() | double 타입의 난수를 리턴(0.0 <= ~ < 1.0) |
int | nextInt() | int 타입의 난수를 리턴 (-2**31 <= ~ <= 2**31-1) |
int | nextInt(int n) | int 타입의 난수를 리턴 (0<= ~ <n ) |
'Back-end > 이것이 자바다[신용권 한빛미디어]' 카테고리의 다른 글
Format 클래스 (0) | 2021.10.24 |
---|---|
Date, Calender 클래스 (0) | 2021.10.24 |
Wrapper(포장) 클래스 (0) | 2021.10.24 |
Array 클래스 (0) | 2021.10.24 |
정규 표현식과 Pattern 클래스 (0) | 2021.10.24 |