拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
스크린샷의 빨간색 텍스트에 대한 이해는 기본적으로 정확하지만 완전하지는 않습니다. @jokester가 말했듯이 561행에 전체 코드를 게시하지 않았습니다. 실제로 TreeMap<T> 또는 TreeSet>을 정렬하는 경우는 두 가지입니다.
은 Comparator<? super T>로 생성되었으며 이 Comparator를 기반으로 정렬됩니다.
또한 Integer 자체는 Comparable 유형을 구현하고, 모든 기본 유형의 캡슐화된 객체(Long, Double, Boolean 등도 포함)와 String은 모두 Comparable을 구현하므로 물론 강제로 적용할 수 있습니다. .
모두를 위한 마지막 질문입니다. TreeMap을 생성할 때 비교기를 사용하는 경우
대신 Comparator<? super K> 유형을 지정해야 하는 이유는 무엇입니까? TreeMap 생성자를 참조하세요. Comparator<K> Comparator<? extends K>공개 트리맵(Comparator<? super K> 비교기);
Comparator<? super K>
Comparator<K>
Comparator<? extends K>
맞습니다
왜냐하면 class Integer implements Comparable<Integer>
class Integer implements Comparable<Integer>
스크린샷의 빨간색 텍스트에 대한 이해는 기본적으로 정확하지만 완전하지는 않습니다. @jokester가 말했듯이 561행에 전체 코드를 게시하지 않았습니다. 실제로 TreeMap<T> 또는 TreeSet>을 정렬하는 경우는 두 가지입니다.
은 Comparator<? super T>로 생성되었으며 이 Comparator를 기반으로 정렬됩니다.
또한 Integer 자체는 Comparable 유형을 구현하고, 모든 기본 유형의 캡슐화된 객체(Long, Double, Boolean 등도 포함)와 String은 모두 Comparable을 구현하므로 물론 강제로 적용할 수 있습니다. .
모두를 위한 마지막 질문입니다. TreeMap을 생성할 때 비교기를 사용하는 경우
또는대신
Comparator<? super K>
유형을 지정해야 하는 이유는 무엇입니까? TreeMap 생성자를 참조하세요.Comparator<K>
Comparator<? extends K>
공개 트리맵(Comparator<? super K> 비교기);맞습니다
왜냐하면
class Integer implements Comparable<Integer>