Jam's story

Random 클래스 본문

Java

Random 클래스

애플쩀 2022. 3. 19. 20:10
Math.random()이랑 다른점 

종자값(seed)를 사용할 수 있다. 

 

 

Random(long seed) 
	long seed=System.nanoTime();
	Random rnd=new Random(seed);
	System.out.println(rnd.nextInt());

 

boolean nextBoolean()

boolean타입의 난수 반환 

 

double nextDouble()

double타입의 난수 반환 

 

flloat nextFloat()

float타입의 난수반환 

 

int nextInt()
int nextInt(int n)

int타입의 난수 반환 

0~n-1까지의 난수 반환 Math.random() 과 범위가 같다. 

 

예) Math.random()*10   ==0<=x<10  == rnd.nextInt(10); 

 

 

getRand(int a, int b) 

a와 b 사이의 int 형 반환 

private static int getRand(int i, int j) {

return (int)(Math.random()*(Math.abs(i-j)+1))+Math.min(i, j);
}}
public class Prac {
public static void main(String[] args) {
for (int i = 0; i < 10;i++) {
	System.out.print(getRand(1,10)+" ");
}
int[] result=fillRand(new int[10], new int[]{2,3,4,5});
int[] result2=fillRand(new int[3],3,5);
}


private static int[] fillRand(int[] is, int i, int j) {
	// TODO Auto-generated method stub
	for (int k = 0; k < is.length; k++) {
		is[k]=getRand(i,j);
	}
	return is;
}

private static int[] fillRand(int[] is, int[] is2) {
	// TODO Auto-generated method stub
	for (int i = 0; i < is.length; i++) {
		is[i]=is2[getRand(0,is2.length)];
	}
	return is;
}

private static int getRand(int i, int j) {
	// TODO Auto-generated method stub
return (int)(Math.random()*(Math.abs(i-j)+1))+Math.min(i, j);
}}​

'Java' 카테고리의 다른 글

22일차  (0) 2022.03.21
정규표현식 -java.util.regex 패키지  (0) 2022.03.20
21일차  (0) 2022.03.18
21일차 시험  (0) 2022.03.18
20일차  (0) 2022.03.17
Comments