跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

Java 类型通配符的具体有什么作用?

java 类型通配符(?)允许编写代码时对类型不敏感。它在泛型集合和通配方法中用途广泛:在泛型集合中,可创建保存不同类型元素的集合,例如:list> list = new arraylist()。在通配方法中,可创建对类型不敏感的方法,例如:public static void printlist(list extends t> list)。 Java 类型通配符的用途 类型通配符是在 Java 中一种通用的类型参数,它允许我们编写代码时对类型不敏感。这在泛型集合和通配方法中特别有用。 语法 立即学习 “ Java免费学习笔记(深入) ”; 类型通配符使用
?
符号表示。它可以限制在它被使用的类型参数。语法如下:
? extends Type
:匹配
Type
类型的子类型或本身。
? super Type
:匹配
Type
类型的超类型或本身。 用途 1. 在泛型集合中 类型通配符可用于创建可以保存不同类型元素的泛型集合。例如: Eclipse导入Android或其他的JAVA项目的正确方法 WORD版 本文档主要讲述的是Eclipse导入Android或其他的JAVA项目的正确方法;希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看 下载
List list = new ArrayList<>(); list.add("Hello"); list.add(10); // 编译器不会报错
由于列表的类型参数 (
?
) 未指定,因此我们可以添加任何类型的数据。 2. 在通配方法中 类型通配符可用于创建对类型不敏感的通配方法。例如:
public static void printList(List list) { for (T item : list) { System.out.println(item); } }
此方法可以打印任何类型的列表,因为类型参数
T
由通配符
? extends T
进行了限制。 实战案例: 假设我们有一个包含各种形状的列表
shapes
:
List shapes = new ArrayList<>(); shapes.add(new Circle()); shapes.add(new Square());
现在,我们可以使用类型通配符创建一个方法来计算这些形状的总面积:
public static double calculateTotalArea(List shapes) { double totalArea = 0; for (Shape shape : shapes) { totalArea += shape.getArea(); } return totalArea; }
这个方法可以计算任何类型形状的总面积,因为它只访问
Shape
类中定义的方法。

相关文章