로또.. 

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 

배열의 값을 출력하고 싶을때 사용한다. 

 

 

 

 

블로그 이미지

나무뚱이

,