当使用通配符时,我们通常会遇到需要处理不同类型的泛型对象的情况。下面是一个使用通配符的案例,展示了如何在一个方法中处理不同类型的泛型对象:
import java.util.ArrayList;
import java.util.List;
public class WildcardExample {
public static void printList(List<?> list) {
for (Object element : list) {
System.out.println(element);
}
}
public static void main(String[] args) {
List<Integer> integerList = new ArrayList<>();
integerList.add(1);
integerList.add(2);
integerList.add(3);
List<String> stringList = new ArrayList<>();
stringList.add("Hello");
stringList.add("World");
System.out.println("Printing integerList:");
printList(integerList);
System.out.println("Printing stringList:");
printList(stringList);
}
}
在上面的例子中,我们定义了一个名为 printList
的方法,它接收一个使用通配符 ?
的 List
对象。在方法内部,我们使用一个增强的 for
循环来遍历列表并打印每个元素。
在 main
方法中,我们创建了一个 List<Integer>
和一个 List<String>
对象,并分别向它们添加一些元素。然后,我们调用 printList
方法两次,传递不同类型的列表作为参数。
由于 printList
方法的参数使用了通配符 ?
,它可以接收任意类型的 List
对象。在方法内部,我们使用 Object
类型来引用列表的元素,因为我们无法确定通配符的具体类型。
通过这种方式,我们可以通过一个通用的方法来处理不同类型的泛型列表,从而实现代码的重用和灵活性。
希望这个案例能够帮助您理解在Java中使用通配符的情况。如果您有其他问题,请随时提问。
原文链接:codingdict.net