java 로또번호 생성코드 질문드립니다

import java.util.*;
//lotto number
public class Pre4 {
public static void main(String[] args){
    Random rann = new Random();
    int[] a = new int[45];
    int[] b = new int[7];
    for(int q=0;q<a.length;q++){
        a[q]=q+1;
    }
    for(int w=0;w<7;w++){
        int r = rann.nextInt(45)+1;
        b[w]=a[r];
    }   
    System.out.print("결과 : ");
    for(int t=0;t<b.length;t++){
    System.out.print(b[t]+",");
    }
  }
}

로또 번호 생성하는 코드를작성해봤는데 실행은 잘되는데 가끔씩 ArrayIndexOutOfBoundsException이 발생하네요 이유가 무엇인가요?

1답변

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.