티스토리 뷰
import java.util.Random;
public class Random클래스1 {
public static void main(String[] args) {
Random r = new Random();
// nextInt() : int타입의 범위 안에 있는 정수 랜덤으로 반환 (음수, 양수)
int a = r.nextInt();
System.out.println(a);
// nextInt(n) : 0 ~ n-1 사이의 정수를 랜덤으로 반환
System.out.println( r.nextInt(3) ); // 0 ~ 2
// nextDouble() : 0 ~ 1 사이의 double 타입 실수(15자리)를 랜덤으로 반환
// = Math.random()과 동일
System.out.println( r.nextDouble() );
// nextDouble() : 0 ~ 1 사이의 float 타입 실수(6자리 정도)를 랜덤으로 반환
System.out.println( r.nextFloat() );
}
}
1494861447
1
0.6384674352669086
0.73568225
import java.util.Random;
public class Random클래스2 {
public static void main(String[] args) {
Random r1 = new Random();
Random r2 = new Random();
// setSeed(정수) -> 랜덤수를 발생시키는 패턴을 지정
// 패턴은 2의 48제곱 개가 존재 (48bit)
r1.setSeed(3);
r2.setSeed(3); // r1과 r2의 랜덤수 발생이 동일하게 됨
for( int i=0; i<10; i++){
System.out.print(r1.nextInt(5)+" ");
System.out.print(r2.nextInt(5));
System.out.println();
}
}
}
4 4
0 0
0 0
1 1
3 3
2 2
4 4
4 4
4 4
1 1
import java.util.Random;
public class Random클래스3 {
public static void main(String[] args) {
Random r1 = new Random(1);
Random r2 = new Random();
// new Random(1) == setSeed(1)
// 생성자안의 정수는 seed 값
r2.setSeed(1);
for( int i=0; i<10; i++){
System.out.print(r1.nextInt(5)+" ");
System.out.print(r2.nextInt(5));
System.out.println();
}
}
}
0 0
3 3
2 2
3 3
4 4
4 4
4 4
1 1
3 3
3 3
'JAVA > PRIMER' 카테고리의 다른 글
[JAVA] 추상클래스 (0) | 2018.04.19 |
---|---|
[JAVA] 상속 (0) | 2018.04.19 |
[JAVA] Math (0) | 2018.04.19 |
자바 Calendar (0) | 2018.04.19 |
자바 StringTokenizer (0) | 2018.04.19 |
댓글