Random 클래스
간단하니 대충 설명한다. Random 인스턴스는 난수를 생성시 사용하며 생성자의 인자로는 시드값이 들어간다.
시드를 안 넣는다면 1970년 1월 1일 부터 지금까지 지난 밀리초 단위의 시간이 시드값으로 들어가서 난수를 생성한다.
import java.util.Random;
/*
Random(){
this(System.currentTimeMillis()); //Random(long seed)의 디폴트 생성자
}
*/
public class RandomNumberGenerator {
public static void main(String[] args) {
Random rand = new Random();
// 인자로 seed 전달.
// 인자가 없을 시 seed로 System.currentTimeMillis() 전달.
// 1970/01/01부터 지금까지 지나온 시간을 밀리초 단위로 반환.
for(int i=0;i<5;i++)
System.out.printf("nextInt:%d, nextBoolean: %s, nextDouble: %g\n",
rand.nextInt(1000), // 0부터 1000까지의 random number
rand.nextBoolean(),
rand.nextDouble()); // 0부터 1까지 random double
}
}
위 소스 코드에는 시드를 안 넣어줘서 시드가 계속바뀌기 때문에 (시간은 계속 흐르니까) 실행시마다 결과가 바뀐다.
'Java' 카테고리의 다른 글
Java- 제네릭(1) (0) | 2023.01.07 |
---|---|
Java- Arrays 클래스 (0) | 2023.01.06 |
Java- BigInteger, BigDecimal 클래스 (0) | 2023.01.03 |
Java- 래퍼 클래스 (0) | 2023.01.03 |
Java- Object 클래스 (0) | 2023.01.02 |