본문 바로가기

자바 언어 & 객체지향 지식

Collections.nCopies 함수 라이브러리 분석과 함께 깊이 있게 이해하기

 

참고: https://codingdog.tistory.com/entry/java-collections-ncopies-%EB%A6%AC%EC%8A%A4%ED%8A%B8%EB%A5%BC-%EC%B4%88%EA%B8%B0%ED%99%94-%ED%95%A0-%EB%95%8C-%EC%9D%B4%EC%9A%A9%ED%95%A0-%EB%A7%8C-%ED%95%98%EB%8B%A4

알고리즘 공부중

List<List<Integer>> table = new ArrayList<>(Collections.nCopies(target+1,null));

와 같은 생소한 함수가 나왔다. 결론부터 얘기하면 Collections클래스의 nCopies란? 리스트를 초기화 할때 사용된다. 다만 얕은 복사가 되어 nCopies의 두번째 인자로는 객체가 아닌 원시타입이나 null이 오는게 보통이다(Collections.nCopies(target+1, null)의 반환형은

new CopiesList<>(n, o);

이다. 즉 위의 코드의 의미는 null을 가리키는 CopiesList의 원소가 target+1개 있다는 코드이다. 

 

이 함수를 통해 디버거 사용방법 까지 익히는 계기가 되었다.

참고: https://flexyduck.tistory.com/240