원하는 길이로 (정수) 배열 랜덤 생성
정수로 이루어진 배열을 랜덤하게 생성한데, 이때 갯수는 내가 원하는 값으로 지정한다.
굳이 정수일 필요는 없고 원하는 배열을 Math.random으로 만들 수 도 있다.
public class shuffle {
public static void main(String[] args) {
//내가 원하는 길이 여기서는 10으로 한다.
//순서대로 배열 생성
int[] arr1 = new int[10];
for(int i=0;i<10;i++) {
arr1[i]=i+1;
}
//생성한 배열값을 조회하자.
for(int i=0;i<10;i++) {
System.out.print(arr1[i]);
System.out.print(", ");
}
}
}
출력 결과
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
배열 랜덤 셔플
굳이 정수일 필요는 없고, 배열이기만 하면 랜덤하게 섞을 수 있다.
순서대로 있는 정수 배열을 랜덤하게 섞어보자.
public class shuffle {
public static void main(String[] args) {
//일단 배열 생성
//10개 사이즈 정수값1~10을 저장하는 배열
int[] arr1 = new int[10];
for(int i=0;i<10;i++) {
arr1[i]=i+1;
}
//배열 섞기용
//1. 배열의 길이만큼 반복실행
for(int k=0;k<arr1.length;k++){
//랜덤값 생성
int i = (int)(Math.random()*10);
int j = (int)(Math.random()*10);
int tmp = arr1[i]; //배열의 랜덤인덱스의 값인 tmp값 생성
arr1[i] = arr1[j]; //해당 배열의 값을 랜덤 배열로 변경
arr1[j] = tmp; //기존 배열의 값을 변경된 배열로 이동
}
//배열 출력확인용
for(int j:arr1) {
System.out.print(j+" ");
}
}
}
출력 결과
10 2 1 4 6 5 7 8 9 3
728x90
반응형
'프로그래밍 > Java' 카테고리의 다른 글
[Java/자바/자바의 정석] 정규표현식을 활용한 비밀번호 허용 여부 체크하는 법 (1) | 2023.12.30 |
---|---|
[내가 이해하기 위한 용어정리] Restfull API란? (1) | 2023.12.26 |
[JAVA / 자바 / 자바 기초] 정수 배열 사이 값 구하기 + 카운트 -문제 (0) | 2023.12.13 |
[JAVA / 자바 / 자바 기초] JAVA에서 쓰는 this란? /this가 의미하는 것 (0) | 2023.12.13 |
[JAVA / 자바] JAVA 온라인 무료 편집기 / JAVA Free Online Compiler (0) | 2023.12.13 |