가상배열 swit[] 를 10자리 만들고
모두 false로 잡아 놓은 후
랜덤숫자 r을 인덱스번호에 대입하여 겹치지 않아 false가 나올경우
해당위치는 true로 초기화한다.
while문을 사용하여 마지막에 인덱스넘버 w++; 해준다
-> for문을 이용해 랜덤넘버를 r_num[i] 를 출력해주면 끝
int r_num[] = new int[3];
boolean swit[] = new boolean[10]; //숫자0~9 //스위치 on/off로 나누어 중복계산
for (int i = 0; i < swit.length; i++) {
swit[i] = false; // 00000 00000
}
clear = false;
int r, w; //r은 랜덤넘버 //w는 인덱스넘버
w = 0;
while(w < 3) {
r = (int)(Math.random() * 10); // 0 ~ 9
if(swit[r] == false) {
swit[r] = true; // 00100 00000
r_num[w] = r + 1; // 1 ~ 10
w++;
'JAVA > 쓸만한 코드' 카테고리의 다른 글
ASCII코드, charAt으로 문자-> 숫자변환/ 함수 (0) | 2020.05.26 |
---|---|
입력받은 숫자중에 중복이 있는지 체크 (0) | 2020.05.26 |
String Class 코드 (0) | 2020.05.26 |
10, 2, 16진수 변환 코드 (0) | 2020.05.26 |
문자열을 숫자로 바꾸기/ Integer.parselnt (0) | 2020.05.26 |