로또..
1등되는 것이 꿈이다..
java로 로또 번호 구하는 방법이다.
예) 카드 섞기 방식이다.
public class TestArrayLotto {
public static void main(String[] args) {
// 로또 공 개수는 45개
int[] balls = new int[45];
// balls 배열에 값을 채워준다.
// 1 ~ 45까지 의 값을 채운다.
for( int i = 0 ; i < balls.length ; i++ ) {
balls[i] = i + 1 ;
}
int tmp = 0 ; // 임시 변수
int idx = 0 ;
// 공의 위치를 100번 정도 섞는다.
for (int i = 0; i < 100 ; i++) {
// 0 ~ 44의 임의의 값을 추출
idx = (int) (Math.random() * 45);
// balls[0]와 balls[idx] 값을 변경한다.
// 공을 섞는 과정이다.
tmp = balls[0];
balls[0] = balls[idx];
balls[idx] = tmp;
}
for (int i = 0; i < 6 ; i++) {
System.out.print( i + "번째 공번호=" + balls[i] );
}
}
}
예) List와 Collections를 활용한 방법
public class Lotto {
public static void main(String[] args) {
// 로도 번호 리스트
List<Integer> lottoList = new ArrayList<Integer>();
// 로또 번호 추가
for (int i = 1; i <= 45; i++) {
lottoList.add(i);
}
// 섞기
Collections.shuffle(lottoList);
// 로또 번호 배열
int[] lottoNums = new int[6];
for (int i = 0; i < 6; i++) {
lottoNums[i] = lottoList.get(i);
}
Arrays.sort(lottoNums);
System.out.println(Arrays.toString(lottoNums));
}
}
Collections.shuffle
배열, 리스트를 랜덤으로 섞는다.
Arrays.sort
배열 정렬할 때 사용한다.
Array.toString
배열의 값을 출력하고 싶을때 사용한다.
'프로그래밍 > 자바(java)' 카테고리의 다른 글
java - 자바 변수(클래스 변수, 인스턴스 변수, 지역변수)의 종류 (0) | 2019.06.26 |
---|---|
java - 자바 클래스 구현하기 (0) | 2019.06.26 |
java - 최솟값 , 최댓값 구하기 (0) | 2019.06.25 |
java - 배열(Array) 에 저장된 값으로 총점 및 평균 값 구하기 (0) | 2019.06.25 |
java - 배열 (array) (0) | 2019.06.25 |