Java 제네릭 배열 관련해서 하나 질문드리고 싶습니다.

조회수 552회

하루종일 스택오버플로우를 찾아봤는데
제네릭 배열을 왜 안쓰는지만 나오지
ArrayList<String>[] list = new ArrayList<String>[10];
처럼 제네릭을 좌 우 다 명시한 경우는 허용이 안되는데
ArrayList<String>[] list = new ArrayList[10];
이렇게 제네릭 생략을 하면 허용 되는 이유는 안나와있더라구요..

제네릭 배열이라는걸 안 쓰는게 좋아서
ArrayList<String>[] list = new ArrayList<String>[10];
라는 문법이 허용안되는거면
ArrayList<String>[] list = new ArrayList[10];
이렇게 제네릭을 생략해서 쓰는건 허용되는 이유는 무엇인가요?
결국 이게 허용된다면 제네릭 배열을 자바에서 허용한다는건데
혹시나 해서 저 문법은 생략이 아니라 제네릭이 아닌 그냥 어레이리스트 배열을 넣는건가 했는데
값을 넣어보니까 제대로 제네릭 배열이더라구요
도저히 모르겠습니다 ㅠㅠ

  • 전 질문자 글을 도저히 모르겠네요. 정영훈 2019.9.28 21:23
  • 생략했는데 어떠한 클래스도 다 담을수 있다는 결론이 나왔으니. 이를 뒤집어 보면 모든지 다 담을수 있는 클래스로 제네릭이 들어가지 않았을까요? ( 구글에 검색해서 나온 링크 공유합니다 https://movefast.tistory.com/74 ) emptyDrawing 2019.10.1 10:30

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)