728x90
반응형
package chap5;
import java.util.Arrays;
/*
* 로또번호 생성
*/
public class ArrEx3 {
public static void main(String[] args) {
// 1.balls 배열에 1 ~ 45까지 값을 저장하기
int balls[] = new int[45];
for (int i=0; i<balls.length; i++) {
balls[i] = i+1;
System.out.print(balls[i] + ",");
}
// 2.balls 배열의 값을 섞기
System.out.println();
for(int i=0; i<10000; i++) {
int f = (int)(Math.random() * 45); // 0 ~ 44 사이의 임의의 수
int t = (int)(Math.random() * 45); // 0 ~ 44 사이의 임의의 수
//인덱스 : 0 1 2 3 4 5 6 7
//balls: 1,2,3,4,5,6,7,8,9, ... 45
int tmp = balls[f]; //tmp = balss[2]
balls[f] = balls[t];
balls[t] = tmp;
}
for (int i=0; i<balls.length; i++) {
System.out.print(balls[i] + ",");
}
int[] lottos = new int[6];
// 3.balls의 값 6개를 lottos 배열에 저장
System.out.println();
for (int i=0; i<lottos.length; i++)
lottos[i] = balls[i];
for (int i=0; i<lottos.length; i++) {
System.out.print(lottos[i] + ",");
}
System.out.println();
//Arrays 클래스 : 배열에 필요한 메서드를 멤버로 가진 클래스
//sort(lottos) : lottos배월의 요소들을 정렬하는 기능
// 정렬 : 순서대로 배치하기
Arrays.sort(lottos); //배열의 값 정렬하기
for (int i=0; i<lottos.length; i++) {
System.out.print(lottos[i] + ",");
}
//개선된 for문
//인덱스(첨자)를 사용하지 않고 요소값들을 출력하기
System.out.println();
for (int num : lottos)
System.out.print(num + ",");
System.out.println();
}
}
728x90
반응형
'study > Java' 카테고리의 다른 글
[Java] 16. 배열 Exam2 (10진수를 8진수로 변경하기) (0) | 2022.03.15 |
---|---|
[Java] 16. 배열 (10진수를 2진수로 변경하기) (0) | 2022.03.15 |
[Java] 16. 배열의 초기값, 배열 내용 변경 (0) | 2022.03.15 |
[Java] 16. 배열 Exam1 (정수값 10개를 저장하는 배열을 정의하고, 배열의 값 : 10, 20, 30, ... 100의 값을 저장 배열요소의 합을 출력하기) (0) | 2022.03.15 |
[Java] 16. 배열 (0) | 2022.03.15 |