Java

[Java] 기본 API 클래스③ Random

망고고래 2024. 4. 3. 15:57

what?

java.util 안의 클래스

무작위값을 얻을 때 사용

 

how?

시드값에 따라 값 반환. 시드값이 같으면 같은 값 추출

시드값은 Random 클래스의 인스턴스를 생성할 때 생성자 파라미터로 설정

시드값 미지정시 currentTimeMilis()를 시드값으로 해서 값 추출

int nextInt() 무작위 int값 반환
int nextInt(int n) 0보다 크고 n보다 작은 int값 반환
boolean nextBoolean 무작위 boolean값 반환
long nextLong() 무작위 long값 반환
double nextDouble() 무작위 double값 반환
float nextFloat() 무작위 float값 반환

 

Random random = new Random();
Random seedRandom = new Random(2);
Random seedRandom2 = new Random(2);

for(int i = 0; i<5; i++){
    System.out.println("기본 생성자 " + i + "번째 값: " + random.nextInt());
}

for(int i = 0; i<5; i++){
    System.out.println("시드 " + i + "번째 값: " + seedRandom.nextInt());
}

for(int i = 0; i<5; i++){
    System.out.println("시드 2 " + i + "번째 값: " + seedRandom2.nextInt());
}

//seedRandom과 seedRandom2의 for문 실행 결과는 같다.(for문 내 반복문의 각 nextInt의 결과는 서로 다름)