Java 中的通配符

2024 年 9 月 10 日 | 阅读 3 分钟

在 Java 中,问号 (?) 被视为或识别为通配符。Java 中通配符的主要目的是用于表示一个未知的类型。

通配符

在 Java 的各种场景或情况下,通配符可以以参数、字段、局部变量或返回类型的形式使用。让我们来了解 Java 中通配符的类型。

Java 通配符的类型

Java 中有几种类型的通配符,让我们详细讨论一下。

1. 上界通配符

当用户希望放宽或简化施加在变量上的限制时,可以主要使用上界通配符。例如,用户希望创建一个可以处理 List<Integer>、List<Double> 和 List<Number> 的方法。Java 用户可以通过上界通配符轻松实现上述功能。

可以使用'?'通配符字符、extends关键字,最后是上界来声明上界通配符。上界通配符的语法如下:

让我们通过一个 Java 示例程序来详细了解上界通配符。

文件名: UpperBoundedWildcard.java

输出

Total Sum of the List is:10.0
Total Sum of the List is:15.299999999999999

2. 下界通配符

上界通配符和下界通配符之间的主要区别在于,在下界通配符中,通配符字符 (?) 的使用后面跟着 super 关键字,后面也跟着其下界。让我们通过一个 Java 示例程序来详细了解上界通配符。

文件名: LowerBoundedWildcards.java

输出

[1, 2, 3, 4]
[5, 6, 7, 8]

3. 无界通配符

无界通配符类型主要使用通配符字符 (?) 进行声明或指定。当声明或创建需要通过利用 Object 类中可用的功能来使用的方法时,可以使用无界通配符。此外,当代码利用泛型类中可用且不依赖于参数类型的方法时。让我们通过一个 Java 示例程序来详细了解上界通配符。

文件名: UnboundedWildcard.java

输出

[1, 2, 3]
[4.4, 5.5, 6.6