bounded-wildcard相关内容

java.util.Comparator.naturalOrder采用< T扩展Comparable< ;?超级T并返回Comparator< T>. - 为什么?

(如果这是重复的,请为我指出正确的答案!我搜索并阅读了几个(> 5)相关问题,但似乎没有发现.还查看了泛型常见问题解答和其他来源...) 显然,当集合类使用比较器时,对于参数化类型T,它应该具有类型Comparator.而且您会看到很多地方,例如我的问题正在使用 Comparator.naturalOrder() 在T extends Comparable ..
发布时间:2020-11-13 04:25:48 Java开发

上限通配符导致Java中的编译错误

我不明白为什么会出现这些编译错误: 1: 列表类型中的方法add(capture#1-of扩展Exec.Bird)不适用于参数(Exec.Sparrow) 2: 列表类型中的add(capture#2-of?extended Exec.Bird)方法是不适用于参数(Exec.Bird) 静态类Bird {} 静态类Sparrow扩展了Bird {} publ ..
发布时间:2020-06-07 18:35:47 Java开发

Java中的通配符和类型参数范围

考虑这种情况: A级{} B级T扩展了A, E扩展T> { B b; B b2; } 据我了解类型界限,在这种情况下,两个 T 和 E 是类A 。所以问题来了:为什么javac在字段 b 的声明中不接受A类作为参数,而是接受通配符 ?在字段 b2 的声明中扩展A ? 解决方案 具有以下类别: A类{} C类扩 ..
发布时间:2020-06-07 18:35:44 Java开发

Java'reduceLeft'签名/下界类型参数

以下签名有效,并在Scala中常用: 特征集合[A] { def reduceLeft [B> ;: A](f:(B,A)=> B):B } 但是,由于>:是Java中 super 的Scala等价物,这是我的第一个想法转换此签名(将功能类型替换为 BiFunction 并使用Use-Site方差注释(也称为有界通配符))将是 interface Coll ..
发布时间:2020-06-07 18:35:42 Java开发

使用generic来存储Java中的常用超类型

假设我有一个方法“mix”,它采用两个可能不同类型的T和S列表,并返回一个包含两者元素的List。对于类型安全,我想指定返回的List是R类型,其中R是T和S共有的超类型。例如: 列表与LT;号> foo = mix( Arrays.asList(1,2,3), Arrays.asList(1.0,2.0,3.0) ); 为了 ..
发布时间:2019-01-02 11:29:44 Java开发

Scala的存在类型和Java的通配符之间的区别是什么?

比Stack Overflow问题更具体 什么是存在类型? ,Scala的存在类型和Java的通配符之间有什么区别,特别是有一些说明性的例子? 在我到目前为止看到的所有内容中,它们似乎相当。 A很少参考。 Martin Odersky 提及他们;谷歌的我的问题最受欢迎 : MO:原始通配符设计......受到存在类型的启发。实际上,原始论文在存在类型中具有编码。但是当实际的最终设 ..
发布时间:2018-12-05 09:56:46 Java开发

Java:帮助我理解:如何在有界通配符字段上使用接口方法?

我无法理解为什么我可以使用像这样的有界通配符,如果我不能(似乎)使用它(通用类型)的话。 如果我在类中有一个通配符字段,我不能使用任何实现接口的泛型参数的方法(除非我提供 null 作为参数)。 class SomeClass {} 类DerivedClass extends SomeClass {} 接口IInterf { T retur ..
发布时间:2018-04-23 14:44:43 Java开发

如何将Java泛型通配符与使用多个泛型参数的方法一起使用?

public static ,所以我们有一个像这样的泛型方法,它是依赖注入初始化的一部分: TI扩展了TS> void registerTransient( Class TS serviceClass,Class implementationClass) { // } 在某些时候,我们发现一个类可能不一定存在的情况。这是一个实现类,我们将注入多个关闭 ..
发布时间:2018-04-23 14:17:45 Java开发

带有泛型的Java F-Bound类型

有没有什么办法可以在java中表达f-边界类型,在调用位置,返回一个通用响应? >界面Functor> public T< B个映射(函数 fn); //不会编译,因为类型不匹配 我可以使用f-bound类型,如果类型永远不会改变,但在地图的情况下,我需要一个新的类型。有没有一种方法来表达这在Java? 我真正 ..
发布时间:2018-04-23 13:49:55 Java开发

原始类型,无界wilcard和有界通配符

我有一个简单的问题,如下所示: 下面是关于整个问题的简单示例: 列出a = new ArrayList(); 列表 b; 列表< ;?扩展对象> C; 根据khalid mughal的Java SCJP(一本非常好的书!): a = b; // 好。扩大转化。 b = a; //也行。没有未经检查的警告。 b = c; //好的 c ..
发布时间:2018-04-23 13:45:39 Java开发

Java泛型与通配符

有什么办法可以解决这种情况(我试图尽可能简单地处理场景) public class Test { public static void main(String [] args){ $ b $ * / $ *这里我想指出CollectionGeneric可以是 *扩展Animal的东西(但构造函数不允许 *通配符) * / CollectionGeneric< ;?延伸动物 ..
发布时间:2018-04-21 20:27:53 Java开发