java8中,邏輯與 & 符號用在介面類別上代表什麼意思
ringa_lee
ringa_lee 2017-05-17 09:58:41
0
1
740

最近在讀lambda表達式相關的java源碼,在Comparator的靜態方法裡發現有不少這種類似的寫法

java.util.Comparator
...
 public static <T> Comparator<T> comparingInt(ToIntFunction<? super T> keyExtractor) {
        Objects.requireNonNull(keyExtractor);
        return (Comparator<T> & Serializable)
            (c1, c2) -> Integer.compare(keyExtractor.applyAsInt(c1), keyExtractor.applyAsInt(c2));
    }

其中return (Comparator<T> & Serializable)應該是表示型別強轉,但是這裡為什麼不直接轉換成Comparator<T>,而要用邏輯與符號?

ringa_lee
ringa_lee

ringa_lee

全部回覆(1)
phpcn_u1582

這個表示強轉成Comparator<T>Serializable
可以看下這個解釋

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板