Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags more
Archives
Today
Total
관리 메뉴

기록

중복이 제거된 배열 본문

JAVA

중복이 제거된 배열

9400 2022. 9. 17. 09:58

/*문제3.
 * 1~10 사이의 랜덤한 값이 10개 저장된 배열에서
 * 중복된 값이 제거된 배열을 만들어주세요. 
 *{5,8,8,4,4,4,1,1,2,5}
 *
 */

Random rnd = new Random();

int[] ar = new int[10];
for(int i = 0; i<ar.length; i++) {
 ar[i]= rnd.nextInt(10)+1 ;
}
System.out.println(Arrays.toString(ar));

//중복이 제거된 배열
int[] a = new int[] {ar[0]}; //한개짜리 배열을 만듦.

for(int i =0; i<ar.length; i++) {
int pick = ar[i]; //ar에서 숫자 하나를 꺼냄
boolean duple = false;  //중복검사를 결과를 위해 만듦

// 배열 a에 pick숫자가 이미 있는지 확인 
for(int j=0; j<a.length; j++) {
if(pick==a[j]) duple=true; //있으면 duple=true
}

if(!duple) { //if(duple == false){ => 중복이 없다면
int[] b =new int[a.length + 1]; // 배열 a보다 길이가 1큰 임시배열 b를 만듦


//배열a에 있는 값을 배열 b에 복사
for(int j =0; j<a.length; j++) {
b[j]=a[j];
}
//중복이 아닌 숫자 pick을 배열 b 맨마지막에 넣어줌
b[b.length-1] =pick;
// 배열 a를 배열 b로 주소값을 변경함 
a=b;
}
}
System.out.println(Arrays.toString(a));


System.out.println("-------------------------------------");

'JAVA' 카테고리의 다른 글

안드로이드 스튜디오 가위바위보  (0) 2022.12.28
JAVA Swing(2022.12.27)  (0) 2022.12.27
동전이 몇개 필요한지 알아보기  (0) 2022.09.17
임의의 정수(=난수) 만들기  (0) 2022.09.15
220906 반복문 for문  (0) 2022.09.15
Comments