Random 클래스

  • 난수를 생성하는 클래스
  • java.util 패키지의 Random 클래스를 사용하면 숫자를 랜덤하게 생성할 수 있다.
package day03;
import java.util.Random; //import문 필수

public class RandomTest {
    public static void main(String[] args){
        Random random = new Random();
        int randomNumber = random.nextInt();
    }
}

 


random.nextInt(x);

0부터 (x-1) 사이의 랜덤한 수를 반환

int randomNumber = random.nextInt(10); //0~9 사이의 난수 반환
int randomNumber = random.nextInt(10)+1; //1~10 사이의 난수 반환

 

package day03;

import java.util.Random;

public class RandomNum {
    public static void main(String[] args) {
        Random random = new Random();
        for(;;){
            int randomNum = random.nextInt(10);
            System.out.print(randomNum + ", ");
        }
    }
}

실행 결과(무한 루프)

 


seed

Random 함수는 같은 seed(씨앗)이 주어지고, 같은 컴퓨터 환경이라면 계속 같은 패턴의 난수를 생성하게 된다.

Random random = new Random(seed값);

 

예시

package day05;

import java.util.Random;

public class RandomSeed {
    public static void main(String[] args) {
        Random ran1 = new Random(20);
        Random ran2 = new Random(20);
        int x = ran1.nextInt();
        int y = ran2.nextInt();

        System.out.println(x);
        System.out.println(y);
    }
}

위 코드에서 ran1과 ran2의 seed값을 동일하게 20으로 주고 출력하면

동일한 숫자가 결과에 나온다.

출력 결과

 

+ Recent posts