'&'的含义是什么返回值中的字符? [英] What's the meaning of the '&' character in the returned value?
本文介绍了'&'的含义是什么返回值中的字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
public static< T,U extends Comparable<? super U>>比较< T>比较(
函数<?super T,?extends U> keyExtractor)
{
Objects.requireNonNull(keyExtractor);
return(Comparator< T& Serializable)
(c1,c2) - > keyExtractor.apply(C1).compareTo(keyExtractor.apply(C2));
}
我感兴趣的部分是这样的:返回(Comparator< T& Serializable)
感谢您的帮助!这意味着结果值将被转换为比较器
和 可序列化
(即可序列化的比较器)
请注意,在执行类似此类转换时,您只能指定 一个类(以及无限的接口),因为一个类不可能从多个超类继承。
public static <T, U extends Comparable<? super U>> Comparator<T> comparing(
Function<? super T, ? extends U> keyExtractor)
{
Objects.requireNonNull(keyExtractor);
return (Comparator<T> & Serializable)
(c1, c2) -> keyExtractor.apply(c1).compareTo(keyExtractor.apply(c2));
}
The part I'm interested in is this: return (Comparator<T> & Serializable)
Thanks for your help!
解决方案
This means that the resulting value will be cast to Comparator
and Serializable
(i.e. a serializable comparator)
Note that when doing casts like this one, you're allowed to specify only one class (and infinite amount of interfaces), because it's not possible for a class to inherit from more than one super-class.
这篇关于'&'的含义是什么返回值中的字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文