当我们定义一个泛型类或方法时,如果我们不确定类型参数的具体类型,就可以使用通配符类型来表示。以下是一个使用通配符类型的例子:
在这个例子中,我们定义了一个静态方法sum,它接受一个List类型的参数。该参数的类型是List<? extends Number>,其中?表示未知类型参数,而extends Number表示参数类型必须是Number或其子类。这意味着我们可以将List<Integer>、List<Double>等具有Number类型或其子类型的列表传递给该方法。在方法体中,我们使用Number类型的doubleValue方法将每个元素转换为double类型,并将它们相加以计算它们的总和。由于我们使用了通配符类型,这个方法可以适用于任何类型的数字列表,而不必为每个具体的类型编写不同的方法。
网友评论