내가 여기 비트와 Comparator.comparing
Java8
에 구현 된Comparator.comparing
방법의 소스 코드를 찾고은 코드
public static <T, U> Comparator<T> comparing(
Function<? super T, ? extends U> keyExtractor,
Comparator<? super U> keyComparator)
{
Objects.requireNonNull(keyExtractor);
Objects.requireNonNull(keyComparator);
return (Comparator<T> & Serializable)
(c1, c2) -> keyComparator.compare(keyExtractor.apply(c1),
keyExtractor.apply(c2));
}
에게 왜 Comparator
를 사이의 비트 and
Serializable
이 필요하며 그 기능은 무엇입니까?
(Comparator<T> & Serializable)
간단하게 연결하기 위해 Comparator
으로 캐스팅 할 수 있습니다.
또한 숫자가 아닌 값의 경우 비트 단위 연산이 어떻게 작동합니까?
감사합니다. 유형 간의 비트 동작하지만 타입이 람다 식에 대응하는 생성 컴파일러 나타내는 교차 형, 아니다
관련 항목 : http://stackoverflow.com/questions/22819804/what-is-the-type-of-an-intersected-type – assylias